Mesclando dicionários em C #

Qual é a melhor maneira de mesclar 2 ou mais dicionários (Dictionary<T1,T2>) em c #? (Recursos 3.0 como LINQ são bons).

Estou pensando em uma assinatura de método ao longo das linhas de:

public static Dictionary<TKey,TValue>
                 Merge<TKey,TValue>(Dictionary<TKey,TValue>[] dictionaries);

ou

public static Dictionary<TKey,TValue>
                 Merge<TKey,TValue>(IEnumerable<Dictionary<TKey,TValue>> dictionaries);

EDITAR: Consegui uma solução legal da JaredPar e Jon Skeet, mas eu estava pensando em algo que lida com chaves duplicadas. Em caso de colisão, não importa qual valor é salvo no ditado, desde que seja consistente.

questionAnswers(20)

yourAnswerToTheQuestion