Thanks FaraZ for the reply.
I've noticed that MSDN uses a similar approach in their sample code. One thing that puzzles me, is why you would want to use the
method. The way I understand it, this method causes the current thread to block until another thread signals it. Is this not exactly what a synchronous socket would do? (Such as when you call mySocket.Accept()). Anyways I found a solution to my problem at this site. http://www.continuumtechnologycenter.com/SocketArticle.htm
It basically starts a new thread and gives that thread the responsabilty of accepting socket connections.
Thanks again for your help