To convert a Dictionary<TKey, TValue> to a List<KeyValuePair<TKey, TValue>> you can just say
var list = dictionary.ToList();
or the more verbose
var list = dictionary.ToList<KeyValuePair<TKey, TValue>>();
This is because Dictionary<TKey, TValue> implements IEnumerable<KeyValuePair<TKey, TValue>>.