You should override the Equals() method (and most likely GetHashCode() method as well, to preserve the equivalence)
public override bool Equals(object obj) { ... }
public override int GetHashCode() { ... }
Please see the msdn reference on the topic
Also see this possible duplicate