"Winsock" is the name given to an old implementation of TCP/IP back in the days before Windows came with a TCP/IP stack built in. Nowadays, the term isn't used. Java Sockets and ServerSockets are just like the sockets you'll find in the Windows API, and of course, being an implementation of the standard TCP/IP sockets abstraction, they interoperate with Windows sockets (or sockets on any other platform.) The Java code Socket s = new Socket("www.yahoo.com", 80); gives you a socket connected to the webserver at Yahoo. You can substitute other names and ports to talk to any other service at any other machine.