The standard impl of C# HttpWebRequest first only sends the Header data (+100 Continue) and after a 100 reply from the server it sends the body of the request. This will introduce about 300ms of overhead.
To avoid this, it is possible to disable the 100-cont part and directly send the complete Request, header and body:
ServicePointManager.Expect100Continue = false;
And we set off with some fast WebClient communication.
Additionally, if some heavy overhead is introduced during the first WebRequest (some seconds):
Check the Proxy config of the WebRequest, e.g. set none:
webRequest.Proxy = WebRequest.DefaultWebProxy;
Last Visit: 31-Dec-99 19:00 Last Update: 9-Feb-16 7:35