Stumbled upon this article written by no other than Eric Lippert listing the top 10 design faults of C# language. Here is the summary,  the source to the full article is at the bottom.  #10: The empty statement does nothing for me Reflects on the fact that lone “;” is a legal statement #9: Too much equality There are too many ways check for equality: ==, Equals, ReferenceEquals, CompareTo(…). From personal experience… Read More