It seems to me that most of what can be accomplished with HttpWebRequest/Response
can also be accomplished with the WebClient
class. I read somewhere that WebClient
is a high-level wrapper for WebRequest/Response
.
So far, I can't see anything that can be accomplished with HttpWebRequest/Response
that can not be accomplished with WebClient
, nor where HttpWebRequest/Response will give you more "fine-grained" control.
When should I use WebClient and when HttpWebRequest/Response
? (Obviously, HttpWebRequest/Response
are HTTP specific.)
If HttpWebRequest/Response
are lower level then WebClient
, what can I accomplish with HttpWebRequest/Response
that I cannot accomplish with WebClient
?
Using HttpWebRequest
gives you more control on the request. You can set cookies, headers, protocol, etc... In the response, you can also retrieve the cookies and headers