using System.Collections.Generic;
public static void Main()
List<uint> numbers = new List<uint> { 4, 2, 2, 2, 2, 7};
var Max_Elements_Count = 4;
var result1 = numbers.GroupBy(p => p)
.Where(x => x.Count() == Max_Elements_Count)
.Select(x => x.Key).ToList();
var result2 = numbers.GroupBy(p => p, (k, group) => new { Key = k, Element_Count = group.Count() })
.Where(x => x.Element_Count == Max_Elements_Count).ToList();
var result3 = (from n in numbers
group n by n into groupList
where groupList.Count() == Max_Elements_Count
select groupList.Key).ToList();
Console.WriteLine(result1[0]);
Console.WriteLine(result2[0].Key);
Console.WriteLine(result3[0]);