The socket class is a very powerful component meant to replace the functionality of the Winsock control from VB6. I will be posting either a tutorial on it or some sample code in the near future.
As for the inet control, the socket class does not offer such a high-level approach to downloading data. This short snippet (courtesy of Derek I think) illustrates how easy it is to download data from HTTP synchronously in .NET:
Dim wcDownload As New System.Net.WebClient()
Dim bytDatabuffer As Byte() = wcDownload.DownloadData("http://www.microsoft.com/")
Dim strDatabuffer As String = System.Text.Encoding.ASCII.GetString(bytDatabuffer)
Having to manually encode/decode text took a bit of getting used to, but it's good for platform independance, and it eliminates the need to use strings some of the time. Take sending a binary file by FTP for example - you use a BinaryReader to get a byte array from a file, and you can pass that byte array right to a Socket class to send it. No need for cumbersome strings where they're not necessary.