Using WSAAsyncSelect there's no need for any thread creation.
Other methods require it, however.
As for thread-per-connection (with blocking sockets I assume): this method doesn't scale, so it's not perhaps the best choice. It is easy to do, however.