TKey を Tuple<> にしてあげればいい。
ついでにこんなクラスを書いてみた。
Dictionary.cs
public Dictionary<TKey1, TKey2, TValue>
: Dictionary<Tuple<TKey1, TKey2>, TValue>
{
public TValue this[TKey1 key1, TKey2 key2]
{
get { return this[Tuple.Create(key1, key2)]; }
set { this[Tuple.Create(key1, key2)] = value; }
}
}