Choose your language
C# Course
From 4 to 360h of flexible workload

C# Course

Master C# from the ground up and build the skills that professional .NET developers use every day. This course covers everything from core syntax and object-oriented design to async programming, REST APIs, and performance optimisation. Whether you are breaking into software development or levelling up your existing skills, this is the complete C# toolkit you need.

What you will learn:

You will start with C# fundamentals and environment setup, then move into control flow, methods, and object-oriented programming. From there, you will work with collections, LINQ, and generics to process data efficiently. The course covers exception handling, file I/O, serialisation, and database access so your applications can persist real data. You will learn asynchronous programming with async and await, then explore advanced topics including design patterns, REST API development with ASP.NET Core, unit testing with xUnit, and performance profiling. By the end, you will have the practical skills and professional habits to contribute to real-world C# projects.

How you study in practice C# Course

How you practise C# Course

For companies looking to train their teams

With Elevify for businesses, the course includes exercises and examples tailored to your company and its specific needs.

Click here

Course content

8 Chapters39 LessonsDuration between 4 and 360 hours (you decide)

Chapter 1See details

C# Fundamentals and Environment Setup

  • Lesson 1 • Variables, Data Types, and Literals

    Declare and initialise variables using built-in value and reference types. Correct type selection prevents runtime errors in later chapters.

  • Lesson 2 • Console Input and Output

    Read user input and display formatted output using Console methods. These skills are used in every hands-on exercise across the course.

  • Lesson 3 • Installing and Configuring the Toolchain

    Set up the .NET SDK, Visual Studio or VS Code, and verify installation. This foundation ensures every subsequent exercise compiles without environment errors.

  • Lesson 4 • C# Program Structure and Syntax

    Examine namespaces, classes, and the Main entry point. Understanding program structure enables correct file organisation throughout the course.

  • Lesson 5 • Operators and Expressions

    Apply arithmetic, relational, logical, and bitwise operators to form expressions. Operator precedence rules directly affect control-flow logic covered next.

Chapter 2See details

Control Flow and Program Logic

  • Lesson 1 • Looping Constructs

    Iterate with for, while, do-while, and foreach loops. Choosing the right loop type improves code clarity and prevents infinite-loop bugs.

  • Lesson 2 • Conditional Statements

    Use if, else if, and else to branch execution based on boolean conditions. Mastery here is a prerequisite for all loop and exception logic ahead.

  • Lesson 3 • Jump Statements and Loop Control

    Alter loop and method flow with break, continue, return, and goto. These statements refine algorithm behaviour built in the previous section.

  • Lesson 4 • Pattern Matching Basics

    Apply is expressions and switch patterns to test type and value simultaneously. Pattern matching reduces verbose conditional chains in real codebases.

Chapter 3See details

Methods, Parameters, and Scope

  • Lesson 1 • Defining and Calling Methods

    Declare methods with return types and parameter lists, then invoke them correctly. Method decomposition is the primary tool for managing complexity in later chapters.

  • Lesson 2 • Recursion and Stack Considerations

    Implement recursive algorithms and recognise stack-overflow risks. Recursion patterns appear in tree traversal and algorithm chapters later.

  • Lesson 3 • Variable Scope and Lifetime

    Identify local, method, and class-level scope and understand variable lifetime. Scope rules govern field access patterns introduced in the OOP chapter.

  • Lesson 4 • Parameter Passing Mechanisms

    Distinguish value, reference, and output parameters using ref, out, and in. Correct parameter semantics prevents subtle data-mutation bugs in class design.

  • Lesson 5 • Optional and Named Parameters

    Define default values and call methods using named arguments for clarity. These features reduce overload proliferation in APIs built in later chapters.

Chapter 4See details

Object-Oriented Programming in C#

  • Lesson 1 • Classes, Objects, and Constructors

    Define classes with fields, properties, and constructors, then instantiate objects. This section establishes the object model used throughout all remaining chapters.

  • Lesson 2 • Abstract Classes and SOLID Principles

    Use abstract classes to share partial implementations and apply SOLID design rules. These principles guide architecture decisions in every advanced chapter.

  • Lesson 3 • Encapsulation and Access Modifiers

    Control member visibility with public, private, protected, and internal. Proper encapsulation enforces invariants that make class APIs reliable.

  • Lesson 4 • Inheritance and Method Overriding

    Extend base classes and override virtual methods to specialise behaviour. Inheritance hierarchies underpin the polymorphic designs in the next section.

  • Lesson 5 • Interfaces and Polymorphism

    Define contracts with interfaces and programme to abstractions for flexible design. Interface-based polymorphism is essential for dependency injection and testing.

Chapter 5See details

Collections, Generics, and LINQ

  • Lesson 1 • LINQ Query Syntax and Method Syntax

    Filter, project, and sort sequences using LINQ query and fluent method syntax. Both syntaxes are used interchangeably in professional codebases.

  • Lesson 2 • Deferred Execution and Performance

    Understand lazy evaluation, materialisation, and query reuse in LINQ pipelines. Deferred execution awareness prevents hidden performance bugs in production code.

  • Lesson 3 • Generics and Type Constraints

    Create generic classes and methods with type parameters and constraints. Generics eliminate casting and enable the reusable algorithms used in LINQ.

  • Lesson 4 • Aggregation and Set Operations

    Compute sums, counts, and distinct sets using LINQ aggregation and set operators. These operators power reporting and data-transformation tasks in later projects.

  • Lesson 5 • Arrays and Built-In Collections

    Work with arrays, List, Dictionary, HashSet, and Queue for common storage needs. Understanding these structures prepares learners for generic type constraints ahead.

Chapter 6See details

Exception Handling and Debugging

  • Lesson 1 • Try, Catch, Finally, and Filters

    Structure try-catch-finally blocks and apply exception filters with when. Proper block structure ensures resources are released even when errors occur.

  • Lesson 2 • Exception Hierarchy and Types

    Navigate the System.Exception hierarchy and distinguish checked from unchecked exceptions. Knowing exception types guides correct catch-block targeting in the next section.

  • Lesson 3 • Debugging Tools and Techniques

    Use breakpoints, watch windows, and the call stack in the IDE debugger. These skills accelerate defect resolution in all subsequent project work.

  • Lesson 4 • Throwing and Re-Throwing Exceptions

    Throw exceptions with meaningful messages and preserve stack traces when re-throwing. Correct re-throw patterns maintain diagnostic information for production debugging.

  • Lesson 5 • Logging and Diagnostic Best Practices

    Integrate structured logging to capture runtime context beyond exception messages. Logging complements exception handling in long-running and distributed applications.

Chapter 7See details

File I/O, Serialisation, and Data Access

  • Lesson 1 • File and Directory Operations

    Read, write, and manage files and directories using System.IO classes. File operations underpin configuration loading and report generation in real projects.

  • Lesson 2 • Database Access with ADO.NET and Dapper

    Execute SQL commands and map results using ADO.NET and the Dapper micro-ORM. These patterns form the foundation for Entity Framework work in advanced projects.

  • Lesson 3 • Streams and Binary Data

    Process binary data with FileStream, MemoryStream, and BinaryReader/Writer. Stream composition enables efficient large-file handling and network data transfer.

  • Lesson 4 • JSON Serialisation with System.Text.Json

    Serialise and deserialise objects to JSON using the built-in library. JSON is the dominant interchange format for APIs and configuration files.

  • Lesson 5 • XML Serialisation and XDocument

    Parse and produce XML using XDocument and XmlSerializer for legacy integration. XML skills remain essential for configuration files and enterprise data exchange.

Chapter 8See details

Asynchronous Programming and Concurrency

  • Lesson 1 • Parallel Programming with PLINQ and Parallel

    Parallelise CPU-bound work using Parallel.For, Parallel.ForEach, and PLINQ. Parallel constructs maximise multi-core utilisation for data-processing workloads.

  • Lesson 2 • Task-Based Asynchronous Pattern

    Create and await Task and Task<T> to perform non-blocking operations. The TAP model is the standard async pattern across all modern .NET APIs.

  • Lesson 3 • Thread Safety and Synchronisation

    Protect shared state with locks, Monitor, Interlocked, and concurrent collections. Synchronisation prevents race conditions in multi-threaded service code.

  • Lesson 4 • Async and Await in Depth

    Understand state machine generation, context capture, and ConfigureAwait. Deep async knowledge prevents deadlocks and context-switching overhead in production.

  • Lesson 5 • Cancellation and Progress Reporting

    Implement cooperative cancellation with CancellationToken and report progress via IProgress<T>. These patterns make long-running operations user-controllable.

Certification
Certification

Your valid completion certificate

This course is for you:

  • Career changers: looking to enter software development from an unrelated field.

  • Computer science learners: wanting hands-on C# skills beyond classroom theory.

  • Junior developers: seeking a structured path from syntax to professional practices.

  • Hobbyist programmers: ready to move past scripts into fully architected applications.

  • IT professionals: aiming to add backend development to their existing technical toolkit.

  • Bootcamp graduates: needing deeper language knowledge to compete in the job market.

What our students say

Feedback from those who have already studied with us:

Your lessons are perfect. I purchased the one-year package and finally have the opportunity to follow various topics of interest without needing to change platforms... I'm grateful for everything you do, I've already recommended you to other people...
Giulio Carlo
Giulio CarloDigital Marketing Student
I like how the lessons are straight to the point and how I can change chapters and skip content I don't need.
Mariana Ferres
Mariana FerresPhotography Student
I like the content and the way videos are presented and transcribed, which speeds up the process!
Luciana Alvarenga
Luciana AlvarengaNail Design Student
The platform is fast, simple to use. The diversity of content and complementary videos really help with learning.
André Felipe
André FelipePrompt Engineering Student

Top qualifications

FAQ

Who is Elevify? How does it work?

Do the courses have certificates?

Are the courses free?

What is the course workload?

What are the courses like?

How do the courses work?

What is the duration of the courses?

What is the cost or price of the courses?

What is an EAD or online course and how does it work?

PDF Course