not sure, but if you recieve asyn and use >>
bytesreceived = TCPClient.GetStream.EndRead(ar)

i dont think your gonna have any problems