15
Steps
4
Foundation
7
Advanced
4
Specialization
1

C# & Object-Oriented Programming

Language fundamentals and core object-oriented concepts you need to start building C# applications.

  • Variables & Data Types Built-in types, var/const, casting, nullable types
  • Control Flow & Operators if/else, switch, loops (for/while/foreach), arithmetic and logical operators
  • Methods & Parameters Method declaration, ref/out/in parameters, optional params, overloading
  • Strings & Text Manipulation Interpolation, StringBuilder, formatting, basic parsing
  • Collections Basics Array, List<T>, Dictionary<TKey,TValue>, basic iteration
  • Enums & Simple Types Enums, flags, simple value types
  • Classes & OOP Fundamentals Classes, properties, constructors, encapsulation, inheritance, interfaces (core OOP concepts)
  • Generics & Equality Generic types, constraints, equality (Equals/GetHashCode, IEquatable<T>)
2

.NET Platform & Tooling

How .NET runs your code and how to work efficiently

Prerequisites: Step 1

  • dotnet CLI build/test/run/publish, SDK-style projects
  • Runtime (CLR) JIT, GC, managed vs unmanaged
  • NuGet Dependencies, versioning, central package management (optional)
  • Git Branching, PRs, code reviews
  • Project Structure Solution, projects, namespaces, analyzers
  • Debugging Breakpoints, watches, dumps basics
3

Error Handling & Diagnostics

Exceptions, logging, and observability

Prerequisites: Step 1

  • Exception Handling try/catch/finally, best practices
  • Custom Exceptions Domain-specific exceptions
  • Microsoft.Extensions.Logging ILogger abstractions, providers, scopes
  • Serilog Structured logs, sinks (console/file/seq), enrichment
  • log4net Classic .NET logging (optional)
  • Tracing & Metrics OpenTelemetry basics (optional)
4

Collections & LINQ

Working effectively with data in memory

Prerequisites: Step 1

  • Collections Deep Dive HashSet, Queue/Stack, LinkedList, concurrent collections
  • LINQ Deferred execution, projection, grouping, joins
  • IEnumerable vs IQueryable In-memory vs provider queries
  • Streams Stream, File I/O, async streams (overview)
5

Async & Concurrency

Asynchronous programming, threading and synchronization

Prerequisites: Step 4

  • Task & async/await CancellationToken, Task.WhenAll, timeouts
  • Async Streams IAsyncEnumerable, await foreach
  • Threading Basics ThreadPool, SynchronizationContext
  • Synchronization lock, SemaphoreSlim, Concurrent* collections
  • Parallelism Parallel.ForEach, PLINQ (optional)
6

Memory & Performance

Write efficient code and understand allocations

Prerequisites: Step 2, Step 4

  • Allocation Awareness Boxing, closures, string allocations
  • Span<T>/Memory<T> High-performance memory access
  • Profiling dotnet-trace, dotnet-counters, profilers
  • Interop IDisposable, SafeHandle, P/Invoke basics (optional)
7

Testing & Quality

Build confidence and maintainability

Prerequisites: Step 1, Step 3

  • Unit Testing xUnit/NUnit/MSTest, assertions
  • Mocking Moq/NSubstitute, fakes, test doubles
  • Integration Testing TestServer/WebApplicationFactory (optional)
  • Static Analysis Analyzers, StyleCop, nullable warnings
8

Data & Persistence

SQL basics, ORMs, migrations, caching

Prerequisites: Step 4, Step 5

  • SQL Fundamentals SELECT/JOIN/INDEX/STORED PROCEDURE/TRIGGER, transactions basics
  • Entity Framework Core DbContext, tracking, migrations, performance
  • Dapper Micro-ORM for hot paths (optional)
  • SQL Server Microsoft SQL Server, T-SQL, SqlClient
  • PostgreSQL Postgres, Npgsql driver, JSONB basics
  • Oracle Oracle DB, ODP.NET / Oracle.ManagedDataAccess
9

Caching

In-memory + distributed caching patterns and tools

Prerequisites: Step 8

  • In-memory cache IMemoryCache, cache-aside, TTL, eviction
  • Distributed cache IDistributedCache, serialization, key design
  • Redis Most common distributed cache (strings, hashes, pub/sub)
  • Memcached Simple, widely-used distributed cache (key/value)
  • NCache .NET-focused distributed cache (often used in enterprise)
  • Cache invalidation Versioned keys, stampede protection, refresh-ahead
10

ASP.NET Core Web

Build production-grade web apps/APIs

Prerequisites: Step 5, Step 7, Step 8

  • HTTP & REST Status codes, headers, idempotency
  • Razor Pages Page model, handlers, routing
  • Minimal APIs Endpoints, filters (optional)
  • Web API Controllers, model binding, validation
  • Middleware Pipeline, exception handling middleware
  • Dependency Injection Service registration & lifetimes (Scoped, Transient, Singleton), options pattern and resolution
  • .NET Aspire Guided mini-projects to build small end-to-end .NET apps and practice architecture, DI, testing, performance and deployment.
  • Swagger / OpenAPI Auto-generate API docs and interactive UI
  • GraphQL Flexible query API alternative to REST
  • Ocelot (API Gateway) Lightweight API gateway for microservices routing
  • .NET MAUI Cross-platform native apps for mobile & desktop
11

Security

Protect apps and data

Prerequisites: Step 10

  • Authentication Cookies, JWT, OpenID Connect concepts
  • Authorization Policies, roles, claims
  • Web Security XSS, CSRF, CORS, headers
  • Secrets Management User secrets, env vars, vaults (optional)
12

Real-Time Communication

Push, streaming and messaging in distributed systems

Prerequisites: Step 10

  • WebSockets Persistent connections, basic realtime patterns
  • SignalR Hubs, groups, scaling out, backplanes
  • RabbitMQ Message broker, pub/sub, queues, background processing
13

Design & Architecture

Patterns and maintainable architectures

Prerequisites: Step 1, Step 7, Step 9

  • SOLID Core OO design principles
  • Common Patterns Factory, Strategy, Adapter, Decorator
  • Clean Architecture Layering, boundaries, DTOs
  • CQRS/Eventing Intro to CQRS, messages (optional)
  • Object Mapping Converting one type to another (AutoMapper)
14

Modern C# (C# 10-12+)

Use modern language features effectively

Prerequisites: Step 1

  • Records Value-like types, immutable models
  • Pattern Matching switch expressions, property patterns
  • Nullable Reference Types Avoid null bugs
  • Source Generators Compile-time code generation (optional)
15

Dev Workflow & Delivery

Ship software reliably

Prerequisites: Step 2

  • Build & CI dotnet test, pipelines, GitHub Actions
  • Docker Images, containers, compose (optional)
  • Deployment Hosting basics, configs, environments (optional)
  • SonarQube Continuous code quality and static analysis
  • Exception Monitoring Production error tracking (Sentry, App Insights)
test_your_knowledge

Ready to challenge yourself?

Try the C# quiz to assess where your skills stand.