Task is very fast. Task is advanced concept than the thread. you can use Task parallel library for lightning fast.
below I'm rewriting the same code but by using parallel tasks.
static void Main(string[] args)
{
Parallel.For(0,50,(i) =>
{
Parallel.Invoke(()=>
{
print((object)i);
});
};
Console.Read();
}
static void print(object threadcount)
{
Console.WriteLine(" {0} Start Time= {1}",threadcount ,DateTime.Now.ToString());
System.Threading.Thread.Sleep(4000);
Console.WriteLine(" {0} end Time= {1}", threadcount, DateTime.Now.ToString());
}