Multithreading
Starting a new thread
Starting a thread and waiting for it
Asynchronous call
Asynchronous call with a result
Synchronization with the main thread
Synchronization with locks
Using a thread pool
Keywords "async" and "await"
Using the Parallel class
Passing variables to a thread
Thread task object