In questo caso arriva in aiuto il metodo "Distinct()" del framework .Net che restituisce i valori univoci.
public class People { public string Name; public string Surname; ... } List<People> listPeople = new List<People>(); People people = new People(); people.Name="A"; people.Surname="AAA"; listPeople.Add(people); ... people = new People(); people.Name="A"; people.Surname="AAA"; listPeople.Add(people); ... people = new People(); people.Name="B"; people.Surname="BBB"; listPeople.Add(people); ... var uniquePeople = listPeople.Distinct();