title: Does TcpListener.AcceptTcpClient throw uncritical exceptions?
body: <p>In my application, I currently stop listening when AcceptTcpClient (or EndAcceptTcpClient) throws an exception. Typically exceptions are thrown when I stop the listener (socket error 10004) or when I disconnect the network adapter.</p>
  
  <pre><code>try
  {
      while (true)
      {
          TcpClient client = listener.AcceptTcpClient();
          // omitted: start new thread which handles the client connection
      }
  }
  catch (...)
  {
      // omitted: handle exception, log, stop listening
  }
  </code></pre>
  
  <p>But, are there any exceptions that are caused by the client, and would require to ignore (or log) the exception and continue calling AcceptTcpClient?</p>