A colleague (Daniel Wessels) just asked me how I would sort a generic Dictionary because it has no build in Sort method. A solution that uses functionality that is built in would be to (ab)use a generic list:
var dictionary = new Dictionary<string, int>() { {"George",42}, {"Mike",28}, {"Pete", 56}, {"Sam", 33}, };
var list = dictionary.ToList();
list.Sort((a, b) => a.Value.CompareTo(b.Value));
foreach (var keyValuePair in list) { Console.WriteLine( string.Concat( keyValuePair.Key, " ", keyValuePair.Value)); }