Is ToIEnumerable good practice?
While I don't see why ToIEnumerable is bad practice, in this specific case I think it is. You're comparing with only one object; why not just attach a where clause on to things? I.e.

return objects.Where((other) =&gt; other != this);


or possibly 

return objects.Where((other) =&gt; !Object.ReferenceEquals(other, this));


Not only will this perform better than Except here, but it's easier to understand, and avoids the entire ToIEnumerable thing entirely.