List<int> list1 = new List<int> { 1,2,3,4};
List<int> list2 = new List<int> { 3,4,5,6};
var r = list1.Except(list2).ToList(); //result: 1,2
r = list2.Except(list1).ToList(); //result: 5,6
r = list1.Intersect(list2).ToList(); //result: 3,4
r = list1.Union(list2).ToList(); //result: 1,2,3,4,5,6
r = list1.Concat(list2).ToList(); //result: 1,2,3,4,3,4,5,6
r = r.Distinct().ToList(); //result: 1,2,3,4,5,6