The System.Threadings.Tasks namespace provides types that simplify the work of writing concurrent and asynchronous code. The main types are Task which represents an asynchronous operation that can be waited on and cancelled, and Task<(Of <(TResult>)>), which is a task that can return a value. The Factory class provides static methods for creating and starting tasks, and the TaskScheduler class provides the default thread scheduling infrastructure.