//list of urls you want to run in parallelList<string> URLsList = new List<string>();URLsList.Add("http://blabla.com");URLsList.Add("http://blabla2.com");URLsList.Add("http://blabla3.com");URLsList.Add("http://blabla4.com");URLsList.Add("http://blabla5.com");//..... etc
Parallel.ForEach(URLsList, new ParallelOptions() { MaxDegreeOfParallelism = 2 },
(url, i, j) =>
{
//url = the url of the current thread
//j = thread number..
//==========================
//add your webclient request here...
//and do other processing etc...
});