Hmmm....:wtf: The only code that works is: Dim rxSocket As Socket = Nothing Dim RecvBytes(1000) As Byte Dim RemoteEP As New IPEndPoint(0, 0) Dim myCallback As New AsyncCallback(AddressOf OnReceive) Private Sub Form1_Load(ByVal sender As System.Object, ByVal e As System.EventArgs) Handles MyBase.Load rxSocket = New Socket(AddressFamily.InterNetwork, SocketType.Dgram, ProtocolType.Udp) RemoteEP = New IPEndPoint(IPAddress.Any, 12000) rxSocket.Bind(RemoteEP) rxSocket.BeginReceiveFrom(RecvBytes, 0, RecvBytes.Length, _ SocketFlags.None, RemoteEP, myCallback, Nothing) End Sub Public Sub OnReceive(ByVal ar As IAsyncResult) Dim iBytes As Integer Try Catch e As SocketException MsgBox(e.Message) Exit Sub End Try ListView1.Items.Add(System.Text.Encoding.UTF8.GetString(RecvBytes)) iBytes = rxSocket.EndReceiveFrom(ar, RemoteEP) rxSocket.BeginReceiveFrom(RecvBytes, 0, RecvBytes.Length, _ SocketFlags.None, RemoteEP, myCallback, Nothing) End Sub But thanks for your help