Easy and Simple way to start a new thread in C#

I recently look for an easy way to start a new thread in C#. Many of the examples that I found required several lines of code. Then I found the simple example below:

Task.Run(() => {
   //TODO add your code here
});

This starts a new thread and let's your code run within it. In the example above I am not waiting for the thread to finish (which would not make a lot of sense of course). So the main thread will go past it. Often you would like to have some sort of control of what is happening in the thread. So that you know when it is finished. The above could make sense if you wish to run things in parallel. An alternative to waiting can be to set a cancellation token. This can be passed around in your application. Below I have made a small example with two threads, which I created while playing around with this.

using (var tokenSource = new CancellationTokenSource())
{
    Task.Run(() => {
        Console.WriteLine("Stop in 1 sec");
        Thread.Sleep(1000);
        tokenSource.Cancel();
        Console.WriteLine("Stopped");
    });

    Task.Run(() => {
        while (true)
        {
            if (tokenSource.IsCancellationRequested)
                break;
            Console.WriteLine("In while loop");
        }
    }).Wait();
}

stars

code blocks