C# Course
C# is a modern, versatile language for web back ends, cloud services, desktop and mobile apps, tools and games, running on the free, cross-platform .NET platform. This course teaches C# 14 on .NET 10 — the current long-term-support release — from your first single-file program through collections, object-oriented design, LINQ, async code and testing, finishing with a complete task-tracker application.
What you'll learn
The course has 63 lessons in eleven parts:
- Getting Started — what C# and .NET are, installing the SDK, running single files with
dotnet run, and projects. - Basics — syntax, variables, types, numbers and
decimal, conversions, operators and user input. - Control Flow —
if,switchstatements and expressions, and loops. - Strings — string methods, interpolation and formatting, raw strings,
StringBuilderand regular expressions. - Methods — parameters,
ref/out, overloading, local functions and recursion. - Collections — arrays, lists, dictionaries, sets, queues and stacks, ranges and spans.
- Object-Oriented Programming — classes, constructors, properties, encapsulation, inheritance, polymorphism, interfaces, structs, records, enums and equality.
- Types & Patterns — nullable types, pattern matching, generics and C# 14 extension members.
- Delegates & LINQ — lambdas, events, querying collections with LINQ, and iterators.
- Errors, Files & Async — exceptions,
using, files, JSON, dates,async/awaitand parallelism. - Projects & Modern C# — namespaces and solutions, NuGet and unit testing, what's new in C# 14, debugging, and a final project.
Every example in the course was compiled and run with the .NET 10 SDK (10.0.401), and the output shown is exactly what it printed. Examples build without warnings, except where a lesson shows a warning or error on purpose. The Try it yourself editors let you change any example and copy it to run on your own computer with dotnet run.
No previous programming experience is required. If you already know Java, C++ or TypeScript, you'll recognise a lot and can move quickly through the early parts.
Practice
- Playground — a starter program to copy and experiment with.
- Exercises — fill-in-the-blank tasks and programming challenges with solutions.
- Quiz — test your understanding across the whole course.
- Syllabus & Study Plan — learning outcomes and a week-by-week schedule.
Lessons
Getting Started
Basics
Control Flow
Strings
Methods
Collections
- Arrays
- Multidimensional and Jagged Arrays
- Lists
- Dictionaries
- Sets, Queues and Stacks
- Indices, Ranges and Spans
Object-Oriented Programming
- Classes and Objects
- Constructors
- Properties
- Static Members
- Access Modifiers and Encapsulation
- Inheritance
- Polymorphism
- Abstract Classes
- Interfaces
- Structs and Records
- Enums
- Equality and Operator Overloading
Types & Patterns
Delegates & LINQ
Errors, Files & Async
- Exceptions
- using and IDisposable
- Files and Directories
- Working with JSON
- Dates and Times
- async and await
- Parallelism and Thread Safety
Projects & Modern C#
- Namespaces and Multiple Files
- NuGet Packages and Unit Testing
- What's New in C# 14
- Debugging and Best Practices
- Project: A Task Tracker