C# Framework provides mechanism to compare complex objects, allows to override comparison rules for specific properties and types.