How about this?
var list1 = new List<int>( new []{1,2,3,4,5}); var list2 = new List<int>( new []{1,3,4}); var list3 = list1.Except( list2);
In this case, list3 will only contain 2 and 5.
EDIT
If you want elements from both sets to be unique, the following code should be sufficient:
var list1 = new List<int>( new []{1,2,3,4,5}); var list2 = new List<int>( new []{1,3,4,7}); var list3 = list1.Except(list2).Union(list2.Except(list1));
2.5 and 7 will be displayed.
Øyvind Bråthen
source share