Advanced Topics in C#

This is a self-paced GK Digital Learning product. GK Digital learning products are created by world-class production and instructional design teams to deliver an experience that feels more like a classroom than traditional e-learning with hands-on activities for real-world results. In addition to high quality video content and hands-on labs you will have access to subject matter experts to ask questions for feedback and support.

In this course, you will explore some of the more advanced features of the C# language. You will learn how attributes work and determine when they are most useful. Additionally, you will learn to write an extensible program, one in which you can plug-in additional functionality after the application is already deployed. The Dispose method’s purpose and its relationship to a class finalizer are also covered. Finally, the course wraps up with a series of activities to show you the power of delegates, the beauty of lambda expressions, and the simplicity of declaring your own events.

This course is available as a subscription for a three-month period beginning at the time of purchase. It includes all course releases, updates, as well as 90 days of instructor support.

You can also purchase this course as part of the Python Developer Bundle or Developer Collection.​


Software developer familiar with the .NET type system, including object-orientation, interfaces, and generics

  • Getting Started with C#
  • Object Oriented Programming with C#


  • Customize Code’s Behavior with Attributes
  • Build an Extensible Application with Reflection
  • Access Unmanaged Resources
  • Define and Use Delegates as Method Parameters
  • Use Lambda Expressions to Call Methods that Require Delegate Parameters
  • Declare Events


What You'll Learn 
  • Identify how an attribute changes code’s behavior
  • Build an extensible application with reflection
  • Author a wrapper for an unmanaged resource
  • Simplify verbose code with more succinct lambda expressions
  • Use a custom delegate to declare a public event

Target Audience

C# developer interested in advanced topics.