The C# Programming Language

Developed with

Lab Steps

Logging into the Microsoft Azure Portal
Connecting to the Lab Virtual Machine Using RDP
Starting the C# Programming Language Exercises

Ready for the real environment experience?

Time Limit8h
star star star star star


Microsoft's .NET (Framework and Core) present developers with unprecedented opportunities. From web applications to desktop and mobile platform applications - all can be built with equal ease, using substantially the same skill-set. But to make the most of this potential, developers must have a thorough grasp of language skills, OO programming concepts and common techniques.

This lab concentrates on the C# programming language itself, to fully prepare delegates fully in readiness for using the .NET Framework/Core. No object-orientated knowledge is assumed - the course provides a suitable OO primer. From basic procedural syntax to sophisticated object-oriented programming techniques, delegates will learn how to write .NET applications with code that is robust and maintainable.

The lab is presented as a mixture of instructional guides and hands-on exercises. Practical exercises follow all main topics, designed to reinforce the points covered. Additional information is provided in appendices to extend the learning experience after the lab has been completed.

The lab provides a good starting point for delegates wishing to undertake Microsoft exam 70-483 (Programming in C#) although further study is likely to be required before sitting the exam. 

Learning Objectives

Upon completion of this lab you will be able to:

  • Write code that includes sequence, selection and iteration constructs
  • Create and use classes and structures (types), including fields, properties, methods, delegates and events
  • Use private, internal, protected and public visibility modifiers
  • Use exception-handling to create robust applications
  • Create derived classes that inherit from custom-written or .NET classes
  • Create interfaces and apply techniques of polymorphism effectively and appropriately
  • Work with generic types
  • Leverage the power of C# features
  • Use delegates
  • Understand the event handling paradigm
  • Use lambda expressions in C# code
  • Use LINQ (Language Integrated Query)
  • Understand their resource management obligations

Intended Audience

This lab is intended for:

  • Developers who will use C# to write .NET Framework or .NET Core applications and who are relatively new to the C# programming language


You should be familiar with:

  • The fundamentals of programming

About the Author

Principal Technologist at QA Ltd

Covered Topics