← Languages

C#

Full course · 21 lessons

C# is Microsofts flagship language for the .NET ecosystem. It powers Windows applications, game development (Unity), cloud services on Azure, and cross-platform apps. These are the definitive free resources — vetted, current, and complete.

Knowledge Course
01

Getting Started with C# and the .NET CLI

Install the .NET SDK, understand dotnet CLI (new/build/run), project structure, and write Hello World.

45 min→
02

Variables and Built-in Types

Value vs reference types, var inference, built-in numeric types, and default values.

60 min→
03

Operators and Expressions

Arithmetic, comparison, logical, bitwise operators; precedence and null-coalescing.

60 min→
04

Control Flow and Switch Expressions

if/else, switch statements and expressions, loops, and jump statements.

60 min→
05

Methods and Parameters

Method signatures, ref/out/in params, params arrays, named and optional arguments.

60 min→
06

Arrays, Lists, and Collections

Arrays, List<T>, Dictionary<TKey,TValue>, Queue, Stack; collection initializers.

60 min→
07

Strings and String Interpolation

String immutability, interpolation, StringBuilder, and common string methods.

60 min→
08

Classes and Objects

Class declarations, constructors, this, static members, and object initializers.

75 min→
09

Properties, Indexers, and Fields

Auto-properties, get/set accessors, computed properties, and indexers.

60 min→
10

Inheritance and Polymorphism

Base and derived classes, virtual/override, protected members, sealed.

75 min→
11

Interfaces and Abstract Classes

Interface contracts, abstract classes, multiple interface implementation.

75 min→
12

Generics

Generic types and methods, constraints, and covariance/contravariance.

60 min→
13

LINQ: Language Integrated Query

Query and method syntax, deferred execution, standard query operators.

75 min→
14

Delegates, Events, and Lambdas

Delegate types, multicast delegates, events, lambda expressions, Func/Action.

60 min→
15

Exceptions and Error Handling

try/catch/finally, exception filters, custom exceptions, throw expressions.

60 min→
16

Async Programming: async/await and Tasks

Task-based async model, await semantics, parallel tasks, error handling.

75 min→
17

Files and Streams

System.IO, File/FileInfo, StreamReader/Writer, binary streams, using disposal.

60 min→
18

Iterators, IEnumerable, and Span<T>

yield return, IEnumerable/IEnumerator, lazy evaluation, Span and Memory.

60 min→
19

Nullable Types and Pattern Matching

Nullable value types, nullable reference types, is patterns, switch patterns.

60 min→
20

Records, Structs, and Tuples

Record types, with-expressions, tuples, deconstruction, structs as value types.

60 min→
21

Advanced: Reflection, Attributes, and Memory

Reflection, custom attributes, unsafe code, garbage collection, performance.

75 min→
Curated Resources