The underlying connection was closed: An unexpected error occurred on a receive.

This article is a great help https://support.microsoft.com/kb/915599 however, there is another potential cause.  If the target server resets the connection without replying with an HTTP status (for example 200 OK) you can also get this error.  Solution, find out why the server is reseting the connection.  Common causes include the target of the HTTP traffic is not handling exceptions and crashing, forcing the web server to recycle that process (app pool for IIS) and this sends the TCP RST.