Programming with C# 2 day training course from £590.00 plus VAT

Classroom - per delegate £695.00 plus VAT
£834.00 inc VAT
In person at one of our UK locations, max 10 delegates
In Person one on one course £1,190.00 plus VAT
£1,428.00 inc VAT
In person at one of our UK locations, no other delegates - click here for details
Closed Courses £1,900.00 plus VAT
£2,280.00 inc VAT
In person at a location of your choosing, max 10 delegates (contact us for prices over 10 delegates) - click here for details
Remote live public course £590.00 plus VAT
£708.00 inc VAT
Remotely accessed over the internet, max 6 delegates - click here for details
Remote live one on one course £790.00 plus VAT
£948.00 inc VAT
Remotely accessed over the internet, no other delegates - click here for details


This C# training course is an introduction to the C# ("C sharp") programming language. With no prior knowledge required it will cover the building blocks of the C# programming language, such as how .NET is different from traditional programming, defining variables, control structures (if..else.., loops etc) and operators, before going on to explain key concepts such as classes, objects, properties and methods. It will then move on to introduce more advanced subjects such as static behaviour, abstract behaviour, enumerations and polymorphism. It will provide delegates with a skill base from which they can go on to develop C# applications on either the Windows Forms or ASP.NET platforms.


2 days


£695 plus VAT

See options at top of the page


There are no prerequsites for this course

Detailed course contents

Introduction to .NET

What is .NET?

Common Language Runtime

Common Type System (CTS)


Introduction to C#

What is C# ?

What is C# used for?

Features of C#

What does C# look like?


Getting started

Creating a project

The Main method

C# basics

Displaying to the console screen

Adding comments

Compiling and running the program from the command line

Compiling and running the program using the Visual Studio Express IDE



Variables in C#

Declaring variables

Variable name rules

C# keywords

Assigning a value to a variable


Escape Sequences

Verbatim string

Character data types

Numeric data types

Signed and Unsigned


Signed Byte

Short Integers

Unsigned Short Integers

Signed integers

Unsigned Integers

Long Integers

Unsigned Long Integers

Real Numbers: float

Double-Precision Numbers


The Boolean Data Type

The DateTime Data Type

Assigning a DateTime value

Declaring a variable

Uninitialised variables


C# / .NET Data Types

C# / .NET Data Type equivalents


Object properties and methods

Data type properties

Data type methods

String methods: PadLeft and PadRight

String method: Substring

More String methods

Numeric formatting with ToString()

Common Format Specifiers

DateTime properties

Static DateTime properties

DateTime methods

Converting DateTime to a String

DateTime format masks

Converting numeric data to string


Data type conversion

Implicit and explicit conversion

Using Parse to convert data types

Using TryParse to convert data types




C# operators

The + operator

The -, * and / operators

The ++ increment assignment operator

The -- inecrement assignment operator

The += addition assignment operator

The -=, *= and /= operators

Logical operators ==

Logical operators !=

Logical operators < and >

Logical operators <= and >=

Logical ‘and’ Conjunction: &

Conditional ‘and’ Conjunction: &&

The Binary ‘or’ operator: |

The Conditional ‘or’ operator: ||

The exclusive ‘or’ operator: ^


Conditional logic

Conditional control: if

Conditional control: else

if .. else if

The Ternary Operator: ? :

Case Switches

Branching statements





The while loop


The for loop

Breaking out of a loop

Continuing a loop



Methods of a class

Types of method

Method parameters

Declaring a method

Examples: Method declarations

Specifying method parameters

Returning a value from a method

A complete method

Overloading a method


Introduction to Classes

Object oriented programming



Creating a class

Creating a class in its own file

Creating an object

Assigning a value to an object

Accessing class members

Objects as parameters and return types

Reference types

Class Fields

Access modifiers

The public access modifier

The private access modifier




Traditional encapsulation


Coding a Property

Implementing a Property

A property with accessor logic

Accessing a property

Read only Properties

Write only Properties

New in C# 3.0: Automatic Properties

Read only / Write only Automatic Properties

Initializing Automatic Properties



What are constructors?

Constructors with arguments

Calling a constructor

The default constructor

Constructor chaining



Introduction to Inheritance

Examples of inheritance use

Deriving one class from another

Adding to a Derived Class

Overriding Members of the Base Class

The Object Class (System.Object)

Calling Members of the Base Class

Referencing the constructor of an inherited class

Multi-Level Hierarchies

The protected access modifier

Constructors and Inheritance

Explicitly calling Base Class Constructors

Protected Constructors


Static members and classes

Static Members of a class

Examples of static behaviour

Declaring Static Members

Referencing Static Members

Static Classes

Rules of static classes


Sealed and Abstract classes

Preventing inheritance from a class

Preventing instantiation from a class

Creating an abstract class


Polymorphism and Name Hiding

Substituting a derived class for its parent


Name hiding



Array Types

Declaring an Array

Initialising an array

Retrieving the length of an array

Using foreach to loop through an array


Error handling

Introduction to Exception Handling

try .. catch


The Exception Class

Catching the Exception instance

The Exception Message

Throwing an Exception

Passing a message to the Exception class



What are Enumerators?

When to use Enumerators?

Declaring enumerators

Using the enumerator



What is a namespace?

Accessing Members of a Namespace

Namespace Nesting

using a Namespace

The System Namespace


Click on a date to book it

Can't see a suitable date?
Click here to register your interest in this course and we will keep you informed when any new dates are added.


  • What are the course times?
    • Courses start at 9:30am start on the first day of your course. Subsequent days will usually start 30 minutes earlier but check with your instructor. The course will end by 4:30am each day.

  • Do I need to bring anything?
    • No, everything is provided, you only have to bring yourself.

  • How can I pay?
    • Once you have booked you will receive a confirmation email, and shortly after that, an invoice. For in-person public and private courses the invoice is payable within 30 days, for online courses payment is required 7 days before the start of the course. Payment can be made by bank transfer (BACS etc), cheque or card.

  • Is there a dress code?
    • No, there is no dress code for any of our courses.

  • Are refreshments provided?
    • At our in-person courses, mid-morning and mid-afternoon refreshments will be provided. Lunch is not provided but all our venues are in central locations.

  • What is the cancellation policy?
    • Cancellations received within 7 days of making your booking or more than 21 days before the scheduled start date will not incur any charge. For cancellations received between 7 and 21 days before the scheduled start date a 50 percent charge will apply. For cancellations received less than 7 days before the scheduled start date a 100 percent charge will apply. For online courses where you have already been sent course materials, any refund is conditional on the return of the materials at your own expense.

Other courses