>>942
大枠は944の言うとおりだと思います。

応用範囲はWinsockが上。
そもそもSocketは違うプラットフォーム、違う環境上で
同一のインターフェースを提供するべく考え出されたものなので、
一度勉強しておけば他システムでも知識を生かすことが出来る。
また、おそらくTCP/IPに直に触れることになるので、
手間もかかるし、バグも作りこむし、必要な勉強量も多いが、
ネットワークの勉強ということならこっちのほうがいいかもしれない。

DirectPlayはゲームに特化したもので、
何も知らない状態でやろうとすると躓く部分、たとえば
スレッド分けとかネゴシエーションとかある程度やっといてくれるので便利。
しかし直接的には Windows でしか扱うことが出来ない。
ただしWindowsはイベントドリブンっぷりを見ると分かるように
古来伝統のCプログラミングとは思想が違うので、
遠い将来を考えたらDirectPlayもやっておいて損はない。
一回でも触れて覚えておけば、別システムでも
DirectPlayの発想を流用したライブラリを書けるようになる可能性もある。

どっちかをやれというのなら…。
それなりの技術力があり、とりあえず動くものを実装できる自信があればWinsock。
Winsockではちんぷんかんぷんなら手軽なDirectPlayで肩慣らし。
をお勧めしてみます。