Após a desconexão do soquete, você só pode aceitar novamente de maneira assíncrona. BeginAccept deve ser chamado em um thread que não sairá até que a operação seja concluída.
Click to search this error in Google
English version
Once the socket has been disconnected, you can only accept again asynchronously. BeginAccept must be called on a thread that won't exit until the operation has been completed.