title: How can I force my C# app to acknowledge TCP datagrams without delay?
body: <p>I tried using TcpClient.NoDelay = true, but it still doesn't send back the acknowledge until 200 ms later. I changed the network adapter's Windows registry settings to disable the Nagle algorithm, and that worked, the ACK gets sent immediately.  Shouldn't there be a way to disable the 200 ms delay without changing registry settings?</p>
  
  <p><strong>Update</strong>: Thanks for the suggestions about UDP. I agree that UDP is the correct protocol for the application, but unfortunately I am dealing with a device that only has a TCP interface at the moment, so my hands are tied there.</p>