This was my night, more or less. Winsock was giving me headaches aplenty, so I retraced my steps back a bit and gave HawkNL another go. Trying not to be too turned off by the website's colour scheme (hehe :P) I bookmarked the documentation and checked out the Delphi examples, which I hadn't spotted the first time. I was pleasantly surprised at what a nice library it is. :)
Long story short -- and I mean a LONG story! -- I learned a whole bunch about the API mostly through experimentation, and one particular obscure bug cost me about 2 hours, whereas I needed to forward ports 1024+MAXPLAYERS in order for a UDP server to receive packets. Fun. :)
So here I am, finally got the testbed I've created for my (fairly) flexible TGameServer and TGameClient classes to rest in whilst I experiment and add to them. Right now the client can just connect and toss a user-inputted string or a random number to the server, but the functionality is there. Tomorrow I'll work on grouping connected sockets to a dynamic list of players and using HawkNL's group system to poll sockets quickly and sort received packets. I don't think I'll have reliable UDP implemented for v0.02, so the first online game test might be a little whonky, but it'll definitely be in for v0.03.
All in all, I went through a lot of dismay and worry that all would be lost, but now I've come out on top and have squashed the once-mighty bugs. So yes, Mr. Donahue, I had a nice day. :)