В чем разница между приведенными ниже фрагментами кода? Не будут ли использоваться потоки threadpool?
Например, если я хочу вызвать функцию для каждого элемента в коллекции,
Parallel.ForEach<Item>(items, item => DoSomething(item));
vs
foreach(var item in items)
{
Task.Factory.StartNew(() => DoSomething(item));
}