The Internet Protocol driver in Winsock actually sends and receives the datagrams itself, and the UDP and TCP layers take care of data integrity. However, to actually communicate with another computer over the Internet your code will have to handle the data itself. That is typically done using a high-level protocol such as SMTP, POP3, FTP, and others.
Think of IP as the telephone wire that carries a voice from a transmitter of one telephone to a receiver of another telephone. UDP and TCP are simply different types of telephones that make sure each sound is received exactly as it was sent. Therefore, SMTP, POP3, FTP, etc, should be considered the language that you use to speak. Both the caller and the person being called need to speak the same language if they wish to understand the conversation. Obviously, you cannot speak Latin to a person who only understands English or French.
The Internet Protocol (IP)
User Datagram Protocol (UDP)
Transmission Control Protocol (TCP)
Request for Comments (RFC)
Simple Mail Transfer Protocol (SMTP)
An ECHO client and server using TCP