Socket Network VB.Net Tutorial

Imports System.Threading
Imports System.Net
Imports System.Net.Sockets
Public Class ServerSocket
  Public Shared Sub Main()
    Try
      Dim serverSocket As New Socket(AddressFamily.InterNetwork,SocketType.Stream,ProtocolType.Tcp)
      Dim serverIP As IPAddress = IPAddress.Parse("127.0.0.1")
      Dim Port As String = "80"
      Dim serverhost As New IPEndPoint(serverIP, Int32.Parse(Port))
      serverSocket.Bind(serverhost)
      serverSocket.Listen(50)
      Console.WriteLine("Server started at: " + serverIP.ToString() + ":" + Port)
      Dim lc As New ListenClient(serverSocket)
      Dim serverthread As New Thread(New ThreadStart(AddressOf lc.ServerThreadProc))
      serverthread.Start()
    Catch ex As Exception
      Console.WriteLine(ex.StackTrace.ToString())
    End Try
  End Sub
End Class
Public Class ListenClient
  Private serverSocket As System.Net.Sockets.Socket
  Private clientSocket As System.Net.Sockets.Socket
  Public Sub New(ByVal serverSocket As System.Net.Sockets.Socket)
    Me.serverSocket = serverSocket
  End Sub
  Public Sub ServerThreadProc()
    Do While True
      Try
        Dim clientSocket As Socket = serverSocket.Accept()
        Dim clientInfo As IPEndPoint = CType( _
            clientSocket.RemoteEndPoint, _
            IPEndPoint)
        Dim serverInfo As IPEndPoint = CType( _
            serverSocket.LocalEndPoint, _
            IPEndPoint)
        Console.WriteLine("Client: " + clientInfo.Address.ToString() + ":" + clientInfo.Port.ToString())
        Console.WriteLine("Server: " + serverInfo.Address.ToString() + ":" + serverInfo.Port.ToString())
      Catch ex As Exception
        Console.WriteLine(ex.StackTrace.ToString())
      End Try
    Loop
  End Sub
End Class
Server started at: 127.0.0.1:80
^CTerminate batch job (Y/N)? n