 <p>Use <code>.Distinct()</code>. Since you can't use the default comparer, you can implement one like this</p> <pre><code>class MyEqualityComparer : IEqualityComparer&lt;Comment&gt; { public bool Equals(Comment x, Comment y) { return x.Sender.Equals(y.Sender); } public int GetHashCode(Comment obj) { return obj.Sender.GetHashCode(); } } </code></pre> <p>And then just filter them like this. You don't need the <code>if</code> statement.</p> <pre><code>List&lt;Comment&gt; StreamItemComments = objStreamItem.GetComments() .Distinct(new MyEqualityComparer()) .Where(x =&gt; x.Sender != ClientUser.UserName) .ToList(); </code></pre>