Personally I suggest you override operator == and != and determine how and why an object is unique there. Then use the Distinct() call on the collection.
You do have to be careful with null values, see Microsoft's Guidelines for Overloading Equals() and Operator == (C# Programming Guide).