Write Asynchronous C# Code With Tasks and PLINQ (Udemy.com)
A comprehensive course teaching you how to write asynchronous C# code with the Task Parallel Library and PLINQ.
Created by: Mark Farragher
Last updated May 2026
What you will learn
- Learn how to write robust asynchronous C# code
- Master the fundamentals of multi-threaded code
- Learn how to use Threads
- Learn how to use the Task class
- Use a Task network to implement MapReduce
- Parallelise any LINQ query with PLINQ
- Learn the difference between Tasks and PLINQ
- How to create Task continuations
- ... and much more!
How it compares
Against the other 194 rated Udemy courses in C# on CourseDuck:
- Rating4.6 out of 5higher than 76% of them
- Reviews1,017#73 of 195 by number of reviews
- Length3.2 hoursshorter than 73% of them
- Last updatedMay 2026more recently than 86% of them
Course Description
Today we have beautiful libraries for writing multi-threaded C#, and there is simply no excuse for writing bad asynchronous code. In this course I will teach you how to write rock-solid code using Tasks and Parallel LINQ that works perfectly on your first try.
I wrote a multi-threaded conversion utility a year ago that successfully migrated 100,000 documents from SharePoint 2010 to SharePoint 2013. The program worked flawlessly the first time because I used PLINQ.
Sound good?
Writing multi-threaded code by hand is hard. I’ll prove it to you by showing you some code that exchanges data between two threads. You will be surprised how difficult it is to do this reliably.
But then I’ll show you how trivially easy it is to write asynchronous C# code using the Task Parallel Library and Parallel LINQ. These amazing frameworks allow anyone to write robust multi-threaded code that can take a beating.
By the end of the course you will be fluent in both the Tasks Parallel Library and Parallel LINQ.
Why should you take this course?
You should take this course if you are a beginner or intermediate C# developer and want to take your skills to the next level. Working with Tasks and Parallel LINQ might sound complicated, but all of my lectures are very easy to follow, and I explain all topics with clear code and many instructive diagrams. You'll have no trouble following along.
Or maybe you're working on a critical asynchronous section of C# code in a lage project, and need to make sure your code scales reliably over multiple CPU cores? The tips and tricks in this course will help you immensely.
Or maybe you're preparing for a C# related job interview? This course will give you an excellent foundation to answer any asynchronous programming questions they might throw at you.
Instructor Details
- 4.6 Rating
1,017 Reviews
Mark Farragher
Mark Farragher is a blogger, investor, serial entrepreneur, and the author of 12 successful IT courses on Udemy and other marketplaces. His career spans over two decades during which Mark has been a Founder twice and CTO three times, and has launched two lean startups in The Netherlands.
Mark became a Microsoft Certified Trainer in 2005 and started training classes in .NET development, web design, and Microsoft back-office servers. Today he uses his extensive knowledge of IT to help CTO’s, architects, and other tech professionals with their leadership, communication, and technical skills.
Mark has MCSA and MCSD certifications from Microsoft and is a certified Microsoft Trainer and Scrum master. He speaks fluent English, Dutch, and German.
More courses by Mark Farragher
How To Become An Outstanding Solution Architect (2026)
4.5 (11,754 Reviews)
Provider: Udemy
Time: 7.8h
$16.99
C# Memory Tricks: Learn How To Master The Garbage Collector (2026)
4.6 (1,741 Reviews)
Provider: Udemy
Time: 3.5h
$12.99
C# Performance Tricks: How To Radically Speed Up Your Code. (2026)
4.4 (1,711 Reviews)
Provider: Udemy
Time: 4.3h
$14.99
How To Write Bulletproof Multi-Threaded C# Code (2026)
4.6 (1,417 Reviews)
Provider: Udemy
Time: 3h
$14.99
Boost Your C# With Structural And Creational Design Patterns (2026)
4.3 (882 Reviews)
Provider: Udemy
Time: 4.1h
$11.99
More C# courses
C# Developers: Double Your Coding Speed with Visual Studio (2018)
4.7 (4,035 Reviews)
Provider: Udemy
Time: 2.2h
$13.99
Object Oriented Programming with C# - Beginner to Advanced (2020)
4.7 (2,063 Reviews)
Provider: Udemy
Time: 5.6h
$64.99
Learn Game Development with C# Programming and MonoGame! (2025)
4.7 (1,094 Reviews)
Provider: Udemy
Time: 6.6h
$12.99
Reviews
By Gabriel Mendonça on 12/30/2023
The lecturer has a very good grasp on the subject. I wish the course had more sections and had alot more exercises. The one exercise it has, is excellent. If you just add a few more, the course would be fantastic. You need to make sure that in the exercises, people are truly running the code in parallel because the editor doesn't know the difference. I added a .Wait() at the end of a continuation(making it a sequential algorithm) and it accepted my code. The way the lecturer speaks is a bit slow indeed but not a deal breaker.
By Anonymized User on 10/18/2021
The topics were interesting, but the PLINQ section was just about 2 lines of code that required half a dozen videos and it was very repetitive. Also, the hands-on exercise on Tasks doesn't work. I tried to do it directly on the platform, but couldn't, then I went to Visual Studio and ran the very first time. I copied everything back as it was directly on the platform and still didn't work. And since it is the only lecture not completed, I didn't get the certificate. And then there is the lack of the Parallel class. Too much talk about it along side Task and PLINQ, but not how to use it. Would have been nice to add it instead of so much about PLINQ for such little coding.
By Joshua Howard on 5/5/2021
This is a review update, I have now gone through 5.5 Udemy async/parallel programming courses and decided to increase my ratings on both of Marks courses on this topic. They are perfect foundations and should be where everyone gets their introduction to Parallel programming. From there it depends on how deep you want to study, but Dmitri's is a must for going to the next level. Elias (Spock) also had a lot of breath, but hes not my ideal presenter.
By Ed Schultz on 9/19/2019
I develop a lot of tools I use in my day to day job (Network Engineer). I am always on the watch for new techniques that may aid in the development of these tools... This class was very helpful in moving me towards parallelism for faster scanning and processing of my network processes to make the tools I develop more efficient... Thanks for the information...
By Mehmet Recep YILDIZ on 2/13/2019
The instructor has in-depth knowledge of the Multithreading programming. I have used multithreading a lot of times before. But still, I've learned lots of things from this course. I highly recommended it to everyone. The only downside is slow talking. I solved it by watching on speed 1.25 ;) Thank you for the course :)
By Erich Einfalt on 10/11/2017
Speed control of the spoken info is a good feature. The chalkboard emulation of written info for topics helped emphasize and enhance the distinction between topic info and its implementation in the C# source code expression. The only issue I had was with an erroneous response to the Quiz 2 Coding Exercise's 'Check Solution' action. It points to a line that does not relate to the error reported and the code runs correctly in VS 2017 with no error. Because the Check Solution action never returns OK, my course completion rating is stuck at 97%.
By Vikram Hegde on 8/30/2017
I bought this course a while back but didn't actually start taking it until yesterday. I wish I had started sooner, because this is a really good course. I have Mr. Farragher's other courses and they are also very good. His speaking style is very clear, and he takes the time to explain difficult concepts in a way that is easy to digest. For example, I liked his explanation and visual diagrams about AutoResetEvents. I never really understood it that well until now.
By Emil Roman on 6/6/2016
Overall, the course is a great resource to have access to when working or wanting to understand the ways of 'Multithreading'. However, the last part, on PLINQ, while very good, gets a loooot of repeating the same concepts.
By Jesus Alfonso Rodriguez on 2/25/2016
It's already the 7th course I've taken with this instructor. I will let Homer Simpson describe what I think: "It's that Mark Farragher, Marge: he won't let me. One quality course after another, each one fresher and more brilliant than the last. If he only stumbled once, just gave us thirty minutes to ourselves, but he won't! He won't let me live!" [S05EP22]
By Ramón Vázquez Flores on 1/8/2016
I have working in a lot of multithreaded applications, doing all the old fashioned way. Now knowing all this, from now on, multithreaded will be extremely less painful. Just one thing, will be nice to have the source code of the examples.
Quality Score
Overall Score : 92 / 100












