Why do such delays occur when working with Task?
using System; using System.Threading; using System.Threading.Tasks; class Program { static void SomethingLong() { Thread.Sleep(30000); } static void Main(string[] args) { for (int i = 0; i < 20; ++i) Task.Run(() => { Console.Write("="); SomethingLong(); }); for (int i = 0; i < 20; ++i) (new Thread(() => { Console.Write("-"); SomethingLong(); })).Start(); for (int i = 1; i <= 20; ++i) { Thread.Sleep(1000); Console.Write(i.ToString()); } } } 