Intermediate C#

Using C# 6.0 effectively means going beyond the object oriented features of the language. Effective C# developers make good use of generics, LINQ (Language Integrated Query) and lambda expressions. They use enumerations, nullable types, initializers and extension methods to write cleaner code that is easier to refactor. This course steadily takes developers with a working knowledge of the object oriented features at the core of the C# language to the next level. 

  • .NET
  • C#

Target audience

You should have taken Beginning C#, or have corresponding knowledge already.

Day 1

C# Recap

  • Structs, classes and interfaces
  • Methods, properties and fields
  • Inheritance vs. interface implementation
  • Generic collections

Implementing generic types

  • Taking and passing type parameters
  • Using type parameters
  • Generic types consuming generic types
  • Constraints

Introduction to Linq

  • What Linq is
  • Writing simple queries
  • Anonymous types
  • Sorting
  • Understanding on-demand execution

Day 2

Data structures

  • Nullable types
  • Enums
  • Array and collection initializers
  • Iterators and the yield keyword
  • Checked/unchecked

Overloading and extending

  • Overloading methods
  • Operator overloading
  • Extension methods

Lambda expressions and delegate types

  • Func, Action and Lambdas
  • Taking lambdas as method arguments
  • Creating your own delegate types

Day 3

Creating richer types

  • Nested classes
  • The partial keyword
  • The IDispose interface and the using keyword

Richer Linq

  • Take, Skip, Distinct and Single
  • Min, max, sum and average
  • Let
  • The Linq method syntax
  • Linq to SQL
  • Linq to XML

Threads and Tasks

  • Threads
  • The .NET thread pool
  • Tasks


  • XML

Course info

Course code: T220
Duration: 3 days
Price: 25 900 SEK
Language: English

Course schedule

18 Apr 2019Book now
17 DecBook now
9 Jan 2019Book now



Contact us for details

+46 40 61 70 720

All prices excluding VAT