I'm using C# .NET 4 and MSSQL.
I'm writing a code that downloads the html of different websites and analyses it using Regex.
Most of the time it takes the code to execute is waiting for the website html download to finish.
Currently i'm using Task.Factory.StartNew to create multiple threads that call DownloadHtml() . DownloadHtml uses WebRequest & StreamReader to download and read the website's html.
1.Should i change the DownloadHtml to use Async WebRequest and just use a single thread ? 2.How is this different from using multiple threads?