.net made easy .net made easy
Text size
Aa
100%
Layout
Focus mode Hide sidebar, widen text
Your Progress
0%
0 / 0 lessons completed
C#14 · .NET10
Course Content
C# Foundations
Part I — C# and .NET52 min
  • What Are C# and .NET?
  • Setting Up the Modern Environment
  • Your First C# Application
Part II — Language Fundamentals2h 24m
  • Variables and Constants
  • Built-in Data Types
  • Strings and Text
  • Type Conversion
  • Operators
  • Control Flow
  • Methods
Part III — Object-Oriented C#5h 38m
  • Classes and Objects
  • Fields and Properties
  • Constructors
  • Static Members
  • Access Modifiers
  • Encapsulation
  • Value vs Reference Types
  • Structs
  • Enums
  • Inheritance
  • Polymorphism
  • Overloading and Overriding
  • Interfaces — First Look
  • Composition vs Inheritance
Part IV — Collections and Data2h 53m
  • Arrays
  • Multidimensional Arrays
  • Jagged Arrays
  • Lists
  • Dictionaries
  • HashSet
  • Stack and Queue
  • Collection Interfaces
  • IEnumerable<T> — First Look
Part V — Errors, Files and Dates3h 27m
  • Exception Handling
  • Creating and Throwing
  • File and Directory Operations
  • Paths
  • Streams — Introduction
  • DateTime and DateTimeOffset
  • Time Zones
  • Working with JSON
  • Serialization
Part VI — Modern C# Fundamentals3h 22m
  • Nullable Reference Types
  • Null-Safe Programming
  • Pattern Matching
  • Records — Introduction
  • Tuples & Deconstruction
  • Modern Switch Expressions
  • Modern Collection Expressions
  • required Members
  • Primary Constructors
Part VII — Practical Development3h
  • Debugging C# Applications
  • Reading Stack Traces
  • Writing Clean C#
  • Naming Conventions
  • Common Beginner Mistakes
  • Project: Expense Tracker
  • Project: Employee System
  • Fundamentals Challenge
C# In Practice
Part I — Advanced OOP4h 40m
  • OOP Revisited
  • Encapsulation in Real Applications
  • Inheritance
  • Composition
  • Polymorphism
  • Abstract Classes
  • Sealed Classes and Members
  • Interfaces
  • Multiple Interface Implementation
  • Interface Segregation
  • Explicit Interface Implementation
  • Dependency Inversion
Part II — Generics & Collections4h 40m
  • Generics
  • Generic Classes
  • Generic Methods
  • Generic Constraints
  • where Constraints
  • Covariance and Contravariance
  • Generic Collections
  • Dictionary Internals
  • Equality and Hashing
  • IComparable<T>
  • IEquatable<T>
  • Custom Collections
Part III — Delegates & Functional C#3h 40m
  • Delegates
  • Custom Delegates
  • Action
  • Func
  • Predicate
  • Lambda Expressions
  • Closures
  • Local Functions
  • Higher-Order Functions
  • Events
  • Event Patterns
  • Event-Driven Design
Part IV — LINQ4h 42m
  • Introduction to LINQ
  • IEnumerable and IQueryable
  • Filtering
  • Projection
  • Sorting
  • Grouping
  • Joining
  • Aggregation
  • Deferred Execution
  • Immediate Execution
  • LINQ Query Syntax
  • LINQ Method Syntax
  • Custom LINQ Extensions
  • LINQ Performance
Part V — Modern .NET Dev3h 20m
  • Dependency Injection
  • Service Lifetimes
  • Configuration
  • Options Pattern
  • Logging
  • Environment-Based Configuration
  • HTTP Client
  • JSON APIs
  • REST Fundamentals
  • OpenAPI
Part VI — Data Access4h 38m
  • ADO.NET Fundamentals
  • Database Connections
  • Commands
  • Parameters
  • Transactions
  • Entity Framework Core
  • DbContext
  • Entities
  • Relationships
  • Migrations
  • LINQ with EF Core
  • Tracking vs No-Tracking
  • Transactions and Concurrency
  • Repository Pattern — When and Why
Part VII — Async Programming3h 40m
  • Synchronous vs Asynchronous
  • Task and Task<T>
  • async / await
  • CancellationToken
  • Task.WhenAll
  • Task.WhenAny
  • Exception Handling in Async
  • Async Streams
  • IAsyncEnumerable<T>
  • Common Async Mistakes
Part VIII — Intermediate Projects2h 48m
  • REST API Project
  • Employee Management API
  • EF Core Database Project
  • Notification Service
  • Background Processing Service
  • Intermediate C# Challenge
Production .NET
Part I — Advanced C# Language6h 44m
  • How Modern C# Executes
  • CLR and Runtime Internals
  • JIT Compilation
  • Garbage Collection
  • Generational GC
  • Memory Allocation
  • Stack vs Heap
  • Boxing and Unboxing
  • Value Types vs Reference Types
  • Records and Record Structs
  • Pattern Matching in Depth
  • Advanced Generics
  • Variance
  • Reflection
  • Attributes
  • Source Generators — Intro
Part II — Delegates & Events3h 43m
  • Advanced Delegates
  • Action / Func / Predicate
  • Expression Trees
  • Lambda Internals
  • Closures
  • Advanced Events
  • Event Aggregation
  • Extension Methods
  • C# 14 Extension Members
Part III — LINQ Deep Dive4h 23m
  • IEnumerable<T> Internals
  • IQueryable<T>
  • Expression Trees
  • Deferred Execution
  • LINQ Performance
  • Custom LINQ Operators
  • LINQ to Objects
  • LINQ to EF Core
  • LINQ and SQL Translation
  • Avoiding LINQ Performance Traps
Part IV — Async & Concurrency6h 29m
  • Task Internals
  • Synchronization Context
  • ThreadPool
  • ValueTask
  • Cancellation
  • Parallel Programming
  • Parallel.ForEach
  • Channels
  • Concurrent Collections
  • Locking and Synchronization
  • Race Conditions
  • Deadlocks
  • Thread-Safe Design
  • Async Streams
  • High-Throughput Async
Part V — Memory & Performance4h 16m
  • Span<T>
  • ReadOnlySpan<T>
  • Memory<T>
  • ArrayPool<T>
  • MemoryPool<T>
  • ref / in / out
  • ref struct
  • stackalloc
  • Zero-Allocation Programming
  • Performance Benchmarking
  • Profiling .NET Applications
Part VI — Architecture & Design7h 15m
  • SOLID Principles
  • Clean Code
  • Coupling and Cohesion
  • Dependency Injection at Scale
  • Design Patterns
  • Factory Pattern
  • Strategy Pattern
  • Decorator Pattern
  • Adapter Pattern
  • Observer Pattern
  • Builder Pattern
  • Mediator Pattern
  • Repository Pattern
  • Unit of Work
  • Clean Architecture
  • Hexagonal Architecture
  • Domain-Driven Design
Part VII — Production ASP.NET6h 23m
  • ASP.NET Core Architecture
  • Middleware
  • Filters
  • Minimal APIs
  • Controllers
  • Model Binding
  • Validation
  • Authentication
  • Authorization
  • JWT
  • OAuth / OpenID Connect
  • Rate Limiting
  • Caching
  • Distributed Caching
  • Resilience & Fault Handling
  • Health Checks
  • Observability
  • OpenTelemetry
Part VIII — Enterprise Data4h 06m
  • Advanced EF Core
  • Query Optimization
  • Compiled Queries
  • Transactions
  • Concurrency
  • Database Connection Mgmt
  • Stored Procedures
  • Bulk Operations
  • Caching Strategies
  • SQL vs EF Core
  • DB Performance Troubleshooting
Part IX — Distributed Systems4h 39m
  • REST API Architecture
  • Microservices
  • Message-Based Architecture
  • Queues
  • Kafka Fundamentals
  • Event-Driven Architecture
  • Idempotency
  • Retries
  • Circuit Breakers
  • Distributed Transactions
  • Outbox Pattern
  • Eventual Consistency
Part X — Cloud and Containers3h 20m
  • Configuration for Cloud
  • Docker and .NET
  • Containerized ASP.NET Core
  • Environment Variables
  • Secrets Management
  • Health Probes
  • Logging and Observability
  • Scaling .NET Applications
  • Cloud-Native .NET
  • .NET Aspire — Introduction
Part XI — Testing & Prod Eng5h 21m
  • Unit Testing
  • Integration Testing
  • Mocking
  • Testcontainers
  • API Testing
  • Performance Testing
  • Load Testing
  • Debugging Production Issues
  • Memory Leaks
  • High CPU
  • Deadlocks
  • Thread Pool Starvation
  • Database Bottlenecks
  • Production Incident Analysis
Part XII — Modern C# 142h 53m
  • What's New in C# 14
  • Extension Members
  • field Backed Properties
  • Null-Conditional Assignment
  • Enhanced Span Conversions
  • Lambda Parameter Modifiers
  • Partial Constructors
  • User-Defined Compound Assignment
  • Modern File-Based Apps
Part XIII — Capstone4h 26m
  • Designing Enterprise Apps
  • Clean Architecture
  • Authentication
  • Database
  • Caching
  • Background Processing
  • Messaging
  • Logging
  • Monitoring
  • Testing
  • Containerization
  • Performance Optimization
  • Production Deployment
  • Final Architecture Review
Start Here · Lessons · Interview Prep · Cheat Sheet · Glossary · About · Contact · Privacy

Learn C# and .NET, properly — 315 free lessons

A complete written course that takes you from your first line of C# through to running .NET in production. No signup, no paywall, no video to sit through — just lessons you can read, search, and come back to.

Browse all 315 lessons
C# Foundations
59 lessons · 7 parts · about 22 hours

Start here if you have never written C#. Syntax, types, control flow and object-oriented programming, built up one concept at a time with nothing assumed.

C# In Practice
90 lessons · 8 parts · about 32 hours

The idioms a working .NET developer uses every day — generics, collections, LINQ, async and await, dependency injection, data access and testing.

Production .NET
166 lessons · 13 parts · about 64 hours

How .NET behaves under real load: language internals, memory and performance, architecture, distributed systems, cloud deployment, security, observability and production debugging — closing with a full capstone build.

Guides and references

Start HereA week-by-week roadmap, whether you are brand new to programming or switching to .NET from another language. .NET RoadmapEverything a .NET developer needs to learn, in order, with the time each stage takes and a lesson for every skill. Interview PrepSixty C# and .NET interview questions with direct answers, each linked to the lesson that goes deeper. C# Cheat SheetThe syntax you reach for every day on one page, current to C# 14 and .NET 10. GlossaryEvery C# and .NET term defined in plain English, with a link to the lesson that explains it. Full SyllabusAll 315 lessons on one page, grouped by tier and part, with the reading time for each.

How to use this course

Pick any lesson from the sidebar and it opens right here. Your progress is remembered in your own browser — nothing is sent anywhere, and there is no account to create. Use the search box to jump straight to a topic, or open the full contents to see the whole syllabus at once.

Every lesson shows its reading time (most are 15 to 25 minutes), the sidebar shows how much of each part is left, and every lesson ends with a short quiz you answer in place, with instant feedback. Finish a lesson a day and you will see your streak grow.

Every lesson also lives at its own address, so you can bookmark one, share it, or read it on its own without the course player around it.

On mobile, tap the menu icon in the top-left to open the lesson list.

Buy me a coffee

Contact Support

Send an Email Chat on WhatsApp