Код для этого (на основе словаря):
foreach (KeyValuePair<String, String> pair in hashtable2)
{
if (hashtable1.ContainsKey(pair.Key))
{
hashtable1[pair.Key] = pair.Value;
}
else
{
hashtable1.Add(pair.Key, pair.Value);
}
}
Я уверен, что есть более элегантное решение, использующее LINQ (хотя я пишу код в 2.0;)).