Getting Started: C#
Get started with programming using the C# programming language
This learning path guides you through everything required to grow into a skilled modern C# and .NET developer. You’ll start by mastering the language basics, then advance into key .NET capabilities, and ultimately learn how to build clean, reliable, and high-performance applications by applying modern development practices.
Learn the fundamentals of the C# language, from syntax and key features to safe handling of null values.
Get started with programming using the C# programming language
Deep dive into the C# programming language and learn more features and patterns
Learn how to properly use null in C# in a modern way and write better, robust code
Build a strong foundation in essential .NET concepts like dependency injection, logging, configuration, and reflection.
Everything you need to know from the basics to very advanced concepts
Everything you need to know about Logging in .NET
Learn how to use Configuration and Options in any .NET codebase
Master the art of Reflection in .NET using C# and make the impossible, possible
Master testing and code quality practices in C#, including unit testing, integration testing, TDD, refactoring, clean code, and SOLID principles.
Learn how to test any codebase in .NET with the latest version of xUnit, the industry-standard testing library.
Everything you need to know to Unit Test your C# codebases
Everything you need to know to integration test your ASP.NET Core codebases
Learn how to write testable C# code using modern coding practices
Master the craft of TDD from the basics to the most advanced concepts
Learn how to write elegant C# using modern Clean Code practices
Everything you need to know to refactor C# codebases using the latest and best coding techniques
Learn one of the core fundamentals of modern software engineering
Dive deeper into advanced .NET development with source generators.
Master the art of writing code that writes code with source generators in C#
Learn how to create objects in flexible and reusable ways using classic creational design patterns.
Learn everything there is to know about the Singleton Design Pattern
Learn everything there is to know about the Abstract Factory Design Pattern
Learn everything there is to know about the Factory Method Design Pattern
Learn everything there is to know about the Builder Design Pattern
Learn everything there is to know about the Flyweight Design Pattern
Learn everything there is to know about the Prototype Design Pattern
Understand how to compose classes and objects into larger structures with structural design patterns.
Learn everything there is to know about the Adapter Design Pattern
Learn everything there is to know about the Bridge Design Pattern
Learn everything there is to know about the Composite Design Pattern
Learn everything there is to know about the Decorator Design Pattern
Learn everything there is to know about the Facade Design Pattern
Learn everything there is to know about the Proxy Design Pattern
Master behavioral design patterns to manage algorithms, relationships, and responsibilities between objects.
Learn everything there is to know about the Mediator Design Pattern
Learn everything there is to know about the Strategy Design Pattern
Learn everything there is to know about the Chain Of Responsibility Design Pattern
Learn everything there is to know about the Command Design Pattern
Learn everything there is to know about the Interpreter Design Pattern
Learn everything there is to know about the Iterator Design Pattern
Learn everything there is to know about the Memento Design Pattern
Learn everything there is to know about the Observer Design Pattern
Learn everything there is to know about the State Design Pattern
Learn everything there is to know about the Template Method Design Pattern
Learn everything there is to know about the Visitor Design Pattern
© 2025 Dometrain. All rights reserved.