using System.Collections.Generic;
public static void Main()
List<Test> tests = new List<Test>();
tests.Add(new Test { GroupId = 2, Name = "group 2 - one" });
tests.Add(new Test { GroupId = 1, Name = "group 1 - one" });
tests.Add(new Test { GroupId = 2, Name = "group 2 - two" });
tests.Add(new Test { GroupId = 2, Name = "group 2 - three" });
tests.Add(new Test { GroupId = 3, Name = "group 3 - one" });
tests.Add(new Test { GroupId = 1, Name = "group 1 - two" });
tests.Add(new Test { GroupId = 3, Name = "group 3 - two" });
var info = tests.GroupBy(t => t.GroupId, t => t).Select(x => x.FirstOrDefault());
foreach(var item in info) {
Console.WriteLine(item.Name);
public int GroupId { get; set; }
public string Name { get; set; }
public override string ToString()