The first 400 students can use code VERTICAL20 to get 20% off our new "From Zero to Hero: Vertical Slice Architecture" course!

Deep Dive: C#

Deep dive into the C# programming language

Picking up where he left off on the Getting Started with C# course, Microsoft Principal Software Engineering Manager Nick Cosentino will dive deeper into C#'s feature set and explain more advanced features and patterns. This course covers features such as object-oriented programming with C#, with sections on inheritance and composition, low-level streams, advanced methods and functions like callbacks and delegates, and explaining multithreading and asynchronous programming. If you understand the basics of C# and want to gain even more in-depth knowledge of the language, then this course is for you.

Curriculum

Welcome

2:14

What will you learn in this course?

4:03

Who is this course for and prerequisites

3:20

Primer on Classes vs Value Types

7:02

Enums

15:02

Structs

7:43

The Problem with Equality

11:52

Records

13:59

Inheritance - Intro

9:25

Inheritance - Vehicle Example

11:33

Interfaces

13:12

Abstract Classes

12:30

Working with Protected and Virtual

12:10

Composition

13:36

Head to Head - Inheritance

10:12

Head to Head - Composition & Summary

9:52

Generics

16:49

Tuples

17:50

Encoding Strings and Bytes

9:57

Streams

11:54

Reading and Writing Files

12:41

Using & Disposable

9:52

XML and JSON

13:39

Callbacks and Delegates

14:40

Extension Methods

5:05

LINQ

16:27

Lazy

5:43

Events

13:41

Multi-project solutions

6:48

Internal access modifier

5:34

NuGet Packages

5:14

Async & Concurrency Patterns Intro

5:38

Threads

8:09

Background Workers

9:36

Task Objects

9:18

Async/Await

18:39

Cancellation Tokens

9:03

Course Conclusion

2:14

Course Info

Level:
Deep Dive
Duration:
6h 28m

Lifetime access

Buy Course Add to Cart
Dometrain Pro

Want access to all of our courses? Subscribe to Dometrain Pro!

Subscribe to Pro

About the Author

author_img

Nick Cosentino

Nick Cosentino is a Principal Software Engineering Manager at Microsoft and a .NET content creator. He manages the teams responsible for deploying the hundreds of services supporting the Microsoft365 suite of products to serve users across the planet. Nick brings his unique experiences to the Big Tech world having worked at a startup that scaled from a handful of employees to hundreds before it went public.

Nick runs a software engineering and dotnet-focused blog as well as a YouTube channel called Dev Leader. While he enjoys solving complex problems with software solutions, Nick is passionate about reducing barriers for people to get started on their software engineering journey.

More courses by Nick Cosentino