Hi
Use simply the CSocket class of MFC. This class allows an easy way to manage multiple transactions: the socket is in asynchronous mode to receive the notifications from the framework and turn to synchronous mode during the read (receive) and write (send) operations. So, almost all the boring job is done by this class, you can concentrate on your application.
Analyse the sample code from MSDN, it's great to fully understand the way CSocket works.
You could also use CAsyncSocket but this is much more difficult...
HTH
Thierry