4.1  346 reviews on Udemy

Multithreading and Parallel Programming in C#

Overcome multithreading and asynchronous programming in C# problems & improve performance by parallel computing in C#
Course from Udemy
 2486 students enrolled
Be able to use a full power of TPL (task parallel library) by using Tasks
Understand the low-level of Threads
Understand all the basic concepts such as "Thread", "Process"; difference between "asynchrony", "concurrency", "multithreading", and "parallel computing"
Use the full power of synchronization constructs such as Monitor (lock), Interlocked, ReaderWriterLockSlim, Semaphore, SynchronizationContext
Use the full power of signaling constructs such as AutoResetEvent and ManualResetEventSlim, CountdownEvent and Barrier, Mutex
Use spinners where appropriate: SpinLock, SpinWait
Understand and use Immutable and Concurrent Collections
Harness the power of parallel computing by using PFX components: Parallel class and PLINQ

For the last two decades, computers became faster by increasing the number of CPU cores. However, the fact of having more cores itself doesn’t make a computer drastically faster if those cores are not used by software properly. We, as software developers, should know how to write asynchronous and parallel executing code to make our applications faster and more responsive.

This course is all about developing more responsive and fast programs. Multithreading and Parallel Computing are topics for those who already have some experience in programming, otherwise, you may face difficulties with understanding the content. Anyway, this course covers:

  • Theoretical foundations of asynchronous programming: main concepts, processes, threads and so on

  • Low-level Thread API, APM, and EAP

  • Task Parallel Library (TPL) including starting tasks, canceling tasks, chaining tasks, waiting for tasks, IO-based tasks, exceptions handling and other

  • Async and Await feature of C#

  • Synchronization including atomicity, Interlocked, Monitor (lock), ReaderWriterLockSlim, Semaphore, SynchronizationContext, and Mutex

  • Signaling constructs such as AutoResetEvent and ManualResetEventSlim, CountdownEvent and Barrier

  • Spinning including SpinWait, SpinLock and our own UpdateableSpin

  • ConcurrentCollections including ImmutableStack, ImmutableQueue, ImmutableList, Immutable Sets, ImmutableDictionary, ConcurrentStack, ConcurrentQueue, ConcurrentBag, BlockingCollection

  • Parallel Programming including Parallel class and PLINQ

Enroll and start learning the foundations of multithreading and parallel computing in .NET.

Multithreading and Parallel Programming in C#
$ 69.99
per course
Also check at

FAQs About "Multithreading and Parallel Programming in C#"


Elektev is on a mission to organize educational content on the Internet and make it easily accessible. Elektev provides users with online course details, reviews and prices on courses aggregated from multiple online education providers.
DISCLOSURE: This page may contain affiliate links, meaning when you click the links and make a purchase, we receive a commission.