C# & .NET Learning Path

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.

Core Language Foundations

Learn the fundamentals of the C# language, from syntax and key features to safe handling of null values.

Getting Started: C#

Getting Started: C#

Get started with programming using the C# programming language

5h 7m Getting Started
Nick Cosentino Nick Cosentino
Deep Dive: C#

Deep Dive: C#

Deep dive into the C# programming language and learn more features and patterns

6h 28m Deep Dive
Nick Cosentino Nick Cosentino

.NET Fundamentals

Build a strong foundation in essential .NET concepts like dependency injection, logging, configuration, and reflection.

Writing Quality Code

Master testing and code quality practices in C#, including unit testing, integration testing, TDD, refactoring, clean code, and SOLID principles.

Advanced .NET Concepts

Dive deeper into advanced .NET development with source generators.

Creational Design Patterns in C#

Learn how to create objects in flexible and reusable ways using classic creational design patterns.

Structural Design Patterns in C#

Understand how to compose classes and objects into larger structures with structural design patterns.

Design Patterns in C#: Proxy

Design Patterns in C#: Proxy

Learn everything there is to know about the Proxy Design Pattern

49m Design Patterns
Amichai Mantinband Amichai Mantinband

Behavioral Design Patterns in C#

Master behavioral design patterns to manage algorithms, relationships, and responsibilities between objects.

Design Patterns in C#: State

Design Patterns in C#: State

Learn everything there is to know about the State Design Pattern

50m Design Patterns
Amichai Mantinband Amichai Mantinband

What's New

Getting Started: AI for .NET Developers
course

Getting Started: AI for .NET Developers

Get started with integrating AI into your .NET applications effectively using the latest LLM best practices.

Learn More
Getting Started: Building .NET Applications on AWS
course

Getting Started: Building .NET Applications on AWS

Learn how to build and deploy .NET applications on AWS using CDK, Lambda, DynamoDB, S3, and more.

Learn More
What's new in C# 14
blog

What's new in C# 14

This guide covers every new C# 14 feature, explains its benefits, and provides practical code examples to help you navigate how you can use them.

Learn More
Let's Build It: AI Chatbot with RAG in .NET Using Your Data
course

Let's Build It: AI Chatbot with RAG in .NET Using Your Data

Build a Retrieval-Augmented Generation (RAG) chatbot that can answer questions using your data.

Learn More
From Zero to Hero: SignalR in .NET
course

From Zero to Hero: SignalR in .NET

Enable enterprise-grade real-time communication for your web apps with SignalR.

Learn More
Deep Dive: Solution Architecture
course

Deep Dive: Solution Architecture

Master solution architecture and turn business needs into scalable, maintainable systems.

Learn More
Migrating: ASP.NET Web APIs to ASP.NET Core
course

Migrating: ASP.NET Web APIs to ASP.NET Core

A step-by-step process to migrate ASP.NET Web APIs from .NET Framework to ASP.NET Core.

Learn More
Getting Started: Caching in .NET
course

Getting Started: Caching in .NET

Let's make the hardest thing in programming easy for .NET software engineers.

Learn More
From Zero to Hero: Testing with xUnit in C#
course

From Zero to Hero: Testing with xUnit in C#

Learn how to test any codebase in .NET with the latest version of xUnit, the industry-standard testing library.

Learn More
Create a ChatGPT Console AI Chatbot in C#
blog

Create a ChatGPT Console AI Chatbot in C#

This walkthrough is your hands-on entry point to create a basic C# console application that talks to ChatGPT using the OpenAI API.

Learn More