C# port of VB.Net web scraping class I wrote some time before 2009.
The purpose is to have something simpler and easier to use, like System.Net.WebClient, but also supports a few things I'd found necessary to scrape some web sites: timeouts, user agents, and remembering cookies.
It's mostly a direct port of the code from this Stack Overflow answer. Even by the time I posted the answer, this was already old. I wrote this back when I still fairly new to .Net and web technologies in general. There are things in here I'd do differently today... but the code still works. You have to start somewhere, and I wanted to put in a better place than an obscure Stack Overflow answer.