Advanced C# Programming Training

  • Learn via: Classroom / Virtual Classroom / Online
  • Duration: 5 Days
  • Download PDF
  • We can host this training at your preferred location. Contact us!

Our Advanced C# 6.0 Programming training course aims to bring seasoned .NET developers up to speed with the most important new functionality, and get first-hand experience of using Best Practices to solve complex programming issues.

It's a great opportunity to fill in knowledge gaps, and learn the new features in .NET 4.6, Visual Studio 2015 & C# 6. Please let us know if you are looking for .NET Core 1.0 training.

During the Advanced C# course, delegates will be introduced to development tools, methodologies and practices which may seem daunting, but implemented correctly, should bring robustness and improved efficiency to the development life-cycle and the applications themselves.

.NET Developers who want to get up to speed quickly with the latest and most advanced features of C# 6.0 in Visual Studio 2015

At the end of this training, attendees will have an understanding of the following:

  • Gain a deeper understanding of the C# programming language
  • Learn the role of reflection, dynamic loading and custom attributes
  • Learn to use the DLR to simplify COM interop and reflection logic
  • Know the role of processes, application domains and threads
  • Learn to manipulate XML data
  • Learn to create LINQ query expressions
  • Program with LINQ to Objects
  • Program with LINQ to XML
  • Program with LINQ to Entities

Advanced C# Language Features

  • Learn how to build custom indexer methods
  • Overload operators on custom types
  • Create custom implicit and explicit conversion routines
  • Create and use extension methods
  • Know the role of anonymous types
  • Understand the internal composition of an anonymous type
  • Work with anonymous methods
  • Work with the C# lambda operator (=>)
  • Understand the role of pointers and the "unsafe context"

Reflection and Attribute Based Programming

  • Know the role of reflection
  • Work with the System.Reflection namespace
  • Dynamically load assemblies at runtime
  • Invoke methods on objets using late binding
  • Know the role of attributes
  • Build, constrain and apply custom attributes
  • Reflect over attributes
  • Build an extensible application using reflection, dynamic loading and attributes

The Dynamic Language Runtime (DLR)

  • Know the scope of the C# dynamic keyword
  • Understand the services of the DLR
  • Use the DLR to simplify reflection code
  • Use the DLR to simplify COM interop code

Topics in Multithreaded Programming

  • Understand the role of processes and application domains
  • Programmatically manipulate processes and application domains
  • Work with the System.Threading namespace
  • Know the role of thread synchronization
  • Create thread safe code using synchronization
  • Work with the Task Parallel Library (TPL)

Topics in XML Data Manipulation

  • Review the role of a well-formed and valid XML document
  • Examine the core XML services of the .NET platform
  • Examine the types of the System.Xml namespace
  • Load and traverse an XML document in memory
  • Work with XML readers and XML writers
  • Configure C# classes for XML serialization

An Introduction to LINQ

  • Understand the motivation behind LINQ
  • Visual Studio LINQ support
  • Debugging LINQ query expressions
  • Work with query operators and query expressions
  • Program with LINQ to Objects
  • Understand deferred and immediate execution
  • Know the role of the System.Linq.Enumerable type
  • Know the role of the System.Func delegate type
  • Understanding the query operators / delegates / lambda relationship


  • Understand the role of LINQ to XML
  • Work with the LINQ to XML object model
  • Examine the System.Xml.Linq namespace
  • Use LINQ to XML to create, query and save XML documents
  • Insert and remove XML data using LINQ to XML
  • Examine VB’s XML literal syntax
  • Work with VB XML axis properties
  • Understand the LINQ to XML / XML literal relationship

LINQ to Entities

  • Define LINQ to Entities
  • Understand the EF programming Model
  • Generate entities using Visual Studio
  • Know the role of object services
  • Know the role of the entity client
  • Examine the format of *.edmx files
  • Apply LINQ queries to relational databases
Contact us to register for a training, to plan a customized training and for all other enquiries!

+90 212 282 7700