Complex object comparison in C#
<p>I have two complex objects of the same type. I want to compare both the objects to determine if they have the exact same values. What is the efficient way of doing this ?</p>

<p>sample class structure given below:</p>

<pre><code>class Package
{
    public List&lt;GroupList&gt; groupList;
}
class GroupList
{
   public List&lt;Feature&gt; featurelist;
}
class Feature
{
   public int qty;
}
</code></pre>
