< Back to Courses

C# Expert

Expanded with new content and updated for C# 12 and .NET 8, this three day course takes you on an intensive deep dive into the advanced concepts and tools of C# in .NET. Crafted with over 20 years of experience, this course is packed with presentations, live demonstrations and hands-on exercises that equip you with the best practices and tools for making your life easier as a developer, while helping you to create exceptional modern applications.

Who Is This Course For?

This course is for developers that want to master the advanced features of C#, enabling them to write applications that deliver more value, performance and scalability using the latest tools and techniques that are being utilized today. The course covers the latest features and inner workings of C# 12 and .NET 8, but is also applicable to developers using older versions of C#.

Prerequisites

This course assumes you have worked as a C# developers for at least a year, and that you have the skills covered in our C# Fundamentals course. You should be comfortable using Visual Studio, Lambda expressions, and LINQ.

Duration

3 days. This course can be delivered over 3 full days or 6 half days.

What You Will Learn

With a range of materials, demonstrations and exercises with access to a seasoned instructor’s expertise, the course aims to take you on a deep dive that takes your understanding to new heights. Beyond the technical skills (see below), you will learn new strategies to keep your code clean, maintainable and reliable. You will be better equipped to tackle complex coding challenges with more agility and tools, enabling you to build state-of-the-art applications. 

  • The .NET ecosystem
    • .NET Framework vs. .NET Core vs. .NET
    • Top-level statements
    • .NET Standard
  • Source Generators
    • Roslyn
    • Analyzers
    • Code-fixes
    • Source generators
  • Visual Studio
    • Editor config
    • Dev tunnels
    • Hot reload
    • HTTP files
  • From Delegates to Lambda
    • Delegates
    • Anonymous methods
    • Lambda expressions
    • Func<T> and Action<T>
  • Value Tuples
    • Classic generic tuples
    • Anonymous types
    • Value Tuples
    • Deconstruct
  • Pattern matching
    • Pattern matching with the if and switch statement.
    • Null checks
  • Switch Expressions
    • Discard
    • Patterns
  • Non-nullable reference types
    • Nullable value types
    • Non-nullable reference types
    • The null-forgiving operator
    • Null-coalescing assignment operator
    • Nullable attributes
  • Value objects
    • Primitive obsession
    • Implementing value object
    • Equality
    • Comparing and sorting
    • Overriding ToString()
    • Always valid and Immutability
    • Immutable operations
  • Records
    • Positional records
    • Records vs manually created value objects
    • Nondestructive mutation
    • Extending records
    • Struct and class records
  • Async
    • Tasks
    • Waiting for tasks
    • Cancellation tokens
    • Async/await
  • C# 12
    • Primary constructors
    • Collection expressions
    • TimeProvider
  • Advanced lambda expressions
    • Refactoring using lambda expressions
    • Closures
    • Common problems with closures
    • Recent lambda expressions improvements
    • Local functions
  • Dynamic
    • Dynamic types
    • ExpandoObjects
    • Dynamic binding
  • Reflection
    • Working with types
    • Querying and inspecting our applications
    • Creating instances of types
    • Pros and cons of using reflection
  • and much more!

C# Expert

Article SKU
T320

Duration
3 days or 6 half days

Level
Master

Language
English, Swedish

Price
Contact me for a price enquiry or to submit interest.

Training FAQs

Do you provide both on-site and remote training classes?

Yes, we provide both types of training.

Do you provide training in both Swedish and English?

Yes, both options are available. All our course materials are in English and we can teach the class in either Swedish or English.

Do you do half-day training?

When we run on-site, we usually do full-day classes. For remote training, we can provide options for both half and full days.

Do you do webinars and shorter talks?

Yes, please visit our Talks page for more details.

Do you provide customized courses?

Yes we do that. Contact me for more information.