protected List<Group> ListUnion_NoRepeats(List<Group> list1, List<Group> list2) { foreach (Group group in list2) { Boolean found = false; foreach (Group group2 in list1) { if (group.ID == group2.ID) { found = true; } } if (!found) { list1.Add(group); } } return list1; }