public static void getRecentes() { Recentes.Clear(); Dictionary <int, int> id_ano = new Dictionary <int, int>(); int ano; foreach (Filme f in Filmes) { int.TryParse(f.Ano, out ano); id_ano.Add(f.Idfilme, ano); } var sortedDict = from entry in id_ano orderby entry.Value descending select entry; foreach (var x in sortedDict) { Recentes.Add(Filmes.FirstOrDefault(f => f.Idfilme == x.Key)); } }