BackgroundWorker bw = new BackgroundWorker();
bw.DoWork += (ob, se) => 
{
    //работа потока
    int a = 5;
};
bw.RunWorkerAsync();
System.Threading.Thread newThread;
newThread = new System.Threading.Thread(() => 
{
    int a = 5;
});
newThread.Start();
new System.Threading.Thread(() => 
{
    int a = 5;
}).Start();
ThreadPool.QueueUserWorkItem((obj) => 
{ 
    int a = 5;
});

```cs
Parallel.Invoke(() => 
{ 
    int a = 5;
});
Task.Run(() =>
{
    int a = 5;
});
Task t1 = new Task(() => 
{
    int a = 5;
});
t1.Start();
Task t2 = Task.Factory.StartNew(() => 
{
    int a = 5;
});
t2.Wait();