Who Should Attend?

This 4-hour workshop is for the C# developer who wants to understand asynchronous programming, whether you're completely new to "await" or you use it all the time. It's also for the developer who wants to create their own "awaitable" methods that run asynchronously. The demo code uses .NET Core 3.1, and samples are available for every platform, whether you're using Windows, macOS, or Linux.

Understanding Asynchronous Programming with C#
Level: Introductory / Intermediate

Asynchronous code is everywhere. In our C# code, we "await" method calls to services and databases; and more and more packages that we use every day have asynchronous methods. But do you really understand what this does?

Understanding is critical. When done correctly, we can make our applications more responsive, faster, and reliable. When done incorrectly, we can block threads or even hang the application entirely.

In this 4-hour workshop, we'll start at the beginning to see how "await" relates to "Task”. We'll do this by calling an asynchronous method, getting a result, and handling errors that come up. We will create our own "awaitable" methods to see how Task and return types work together. With our own methods, we'll also better understand why we may (or may not) care about getting back to the original calling thread. We'll also cover some dangers, such as using "async void" or misusing ".Result". Finally, we'll use Task to run multiple operations in parallel to make things faster. With all of these skills, we can write more effective asynchronous code.

For this workshop, it is assumed that you have experience with C#, but no specific asynchronous programming experience is needed. To run the samples code, you will need .NET 3.1 installed. Jeremy will be using Visual Studio 2019, but the code samples will run using Visual Studio Code or the editor of your choice.

You will learn:

  • How to use "await" and "Task" to run asynchronous methods
  • About handling errors from asynchronous processes
  • About writing your own asynchronous methods
  • How to avoid pitfalls such as "async void" and ".Result"
  • About running multiple methods in parallel

Meet Our Speaker

Jeremy Clark

Jeremy Clark makes developers better. By drawing on over 15 years of experience in application development, he helps developers take a step up in their skill set with a focus on making complex topics approachable regardless of skill level. He is a Microsoft MVP for .NET, and he has authored seven courses for Pluralsight, including "C# Interfaces", a course aimed at giving developers a clear understanding of abstraction. He loves speaking and has delivered over 300 technical presentations in the last 10 years in the United States and Europe. Jeremy lives in northern Washington with his lovely wife, 3 cats, 2 dogs, and a banjo.


4-Hour Virtual Training Workshop
Early Bird Registration through August 28
Standard Registration through September 9

**Please note that since this virtual workshop is not a webinar, it is one (1) person per registration.

REFUND AND CANCELLATION: You may substitute one person in your place by contacting [email protected] at least five business days prior to the event. If you must cancel, please notify our Conference Registrar in writing by the Early Bird deadline, August 28, 2020. Your fee will be returned, less a $50 cancellation fee. Cancellations made after the Early Bird deadline as well as "no-shows" are liable for the full registration fee.

Virtual Classroom Requirements

All remote users need to participate in a Virtual Training Room event is a computer with camera, wired internet connection, speakers, and a microphone -- it's that easy.

Why Visual Studio Live!

Visual Studio Live! (VSLive!™) conferences and training seminars offer intense developer training and knowledge-share to software developers, programmers, architects, designers and more that are looking for training they can put to use immediately back in the office. Join our unique brand of training on .NET, the Microsoft Platform, open-source technologies and more. Visit us at vslive.com.


Questions or Want to Learn More?
Email Brent Sutton at [email protected].
We look forward to hearing from you!