Actually the Winsock is the easiest thing to program.....the hard part is knowing what to when the other end doesn't respond or you loose a packet, etc. I'm getting ahead of myself, this may help --- http://www.madwizard.org/programming/tutorials/netcpp/1 you probably found this one already? Read through it, don't forget to look for the "Next" at the bottom to go to the next section, the site layout is some what unfriendly as you can get lost in it.
Before you start any winsock programming, get the Winsock2 API reference, yes Winsock2 is what everyone is using...