Asynchronous programming is a rich and deep topic. This course introduces the concepts related to asynchronous programming with C# and the techniques for applying those concepts. Students are provided with a combination of text- and video-based instructional materials, as well as a series of hands-on lab activities, to learn skills that they can apply to enterprise software development. This course focuses on real-world applications of this programming style, and it presents common use cases where asynchronous programming is most effective. The hands-on labs take students through both desktop and web application development, examining how asynchronous development can be effective on each platform. Students are guided to write code with parallel programming techniques, working through common use cases.