Course Information
Course Overview
Build professional C# skills with inheritance, interfaces, generics, LINQ, delegates, lambdas, and modern .NET patterns
This intermediate‑level course is designed for developers who already understand the basics of C# or have completed your introductory course. It teaches the real‑world skills needed to become a professional C# developer, with a strong focus on object‑oriented design, clean architecture, and modern .NET development practices.
You’ll learn how to design and implement classes, handle exceptions correctly, apply inheritance and polymorphism, work with interfaces, and build reusable components using generics. The course also covers delegates, events, lambda expressions, LINQ, reflection, metadata, threading, tasks, and essential features of the .NET library.
Chuck’s courses have been used by Microsoft to train their own developers and have been delivered to thousands of engineers across corporations, government agencies, and the military. His teaching style emphasizes clarity, best practices, and hands‑on learning through interactive labs and assignments with instant feedback.
By the end of this course, you’ll have the confidence and skills to build robust, maintainable, object‑oriented applications using modern C# and .NET.
What You’ll Learn
Design and implement classes with constructors, inheritance, and polymorphism
Handle exceptions correctly and build robust error‑handling strategies
Apply interfaces and dependency inversion for clean architecture
Use generics to build reusable, type‑safe components
Work with tuples, operator overloading, and extension methods
Apply delegates, events, and lambda expressions for functional programming
Query and transform data using LINQ
Use reflection and metadata for dynamic behavior
Work with threads and tasks for asynchronous programming
Strengthen your skills with hands‑on labs and real‑world exercises
Software Engineering Foundations
Object‑oriented programming
Exception handling
Interfaces and abstraction
Modern .NET Development
Generics
LINQ
Delegates, events, lambdas
Software Architecture & Design
Dependency inversion
Clean code
Reusable component design
Course Content
- 7 section(s)
- 53 lecture(s)
- Section 1 Introduction
- Section 2 Review of C# Basics
- Section 3 Object-Oriented C#
- Section 4 A Survey of the .Net Core Library
- Section 5 Functional Programming
- Section 6 Reflection & Metadata
- Section 7 Multitasking
What You’ll Learn
- Best practices in object-oriented C# development, New features in C#, including lambda expressions and LInQ, The .Net Core development, Test Driven development
Skills covered in this course
Reviews
-
PPreshailen Ruthnam
Yes, the course was a good match. There could have been more examples to reinforce the lessons even more, but it was an overall good course
-
LLaura Rowley
The majority of this course was a refresher for me since I have a good amount of experience in C# and .Net Core. Overall a very good course. The instructor lectures in a clear/concise manner, so I am satisfied with the presentation aspect. However, the lab exercises are basic at best, and the starters were a bit too "leading". I would've liked a bit more intermediate level exercises for each section, and a deeper dive into Reflection (no exercises accompanied this section). Also it would be great to add a section dedicated to async vs sync programming with exercises specfic to each.
-
CClinton T. Harris
I prefer taking courses where the instructor teaches in the IDE with the student following along, I retain more that way and have code to play with. These PowerPoint lectures are antiquated.
-
EErica Grant
Overall good course it was the only 'intermediate' C# course I could find I mostly just needed to quickly pick up on some syntax and I think this course did that well. The labs were a little difficult inside udemy but if you are just looking for a quick c# course to get you started on a project/ before you take a longer/more specific course this is a good one.