Some time ago, I tried to implement a simple tcp server using the System.Net.Sockets classes, TcpClient and TcpServer. While building a synchronous server was straight forward, it was a little awkward to use the old Begin/End async methods. Having to use callbacks for everything asynchronous leads to more methods and harder to read code.
A very frequent question I see is how to make working with dropdown lists easy. Most of the solutions you can find involve a quick and dirty approach. I say dirty because it appears to solve the problem, but really leaves you without server validation.