Learn C# Programming (In Ten Easy Steps)

The simplest way to learn C# programming.
  • Lectures 33
  • Video 4 Hours
  • Skill level beginner level
  • Languages English
  • Includes Lifetime access
    30 day money back guarantee!
    Available on iOS and Android
    Certificate of Completion

How taking a course works


Find online courses made by experts from around the world.


Take your courses with you and learn anywhere, anytime.


Learn and practice real-world skills and achieve your goals.

Course Description

Learn C# Programming (in ten easy steps) is suitable for beginner programmers. Step-by-step it explains how to write C# code to develop Windows applications using either the free Visual Studio Community Edition or a commercial edition of Microsoft Visual Studio (it even explains how to write C# programs using free tools for OS X).

C# is one of the most widely used an important of all modern programming languages. If you need to learn C# quickly and painlessly, this is the perfect course.

You will begin by learning the core features of programming – variables, constants, functions and data types. You will move on rapidly to learn about Object Orientation and the more advanced features of C# and the .NET framework such as file-handling, data-streaming, dealing with exceptions (errors) and overriding methods. Even if you start out as a complete beginner, by the end of this course you will have built a really solid foundation of programming knowledge and skills.

All the source code of sample projects is provided ready for you to download, run and modify. The course also includes an eBook that provides even more information on the topics being discussed. And there are also interactive quizzes to test your understanding of each major topic.

The course instructor, Huw Collingbourne, is Director of Technology with SapphireSteel Software, a company that specialises in Visual Studio development tools (written in C#) for professional programmers.

Learn C# Programming (in ten easy steps) is the fastest and simplest way to help you make the move from coding novice to professional programmer.

What are the requirements?

  • Visual Studio (either the free Community edition or a commercial edition). We explain how to download and install this in the course.

What am I going to get from this course?

  • Over 33 lectures and 4 hours of content!
  • Master C# programming concepts from the ground up
  • Use the source code examples to learn step-by-step
  • Understand the special features of C#: object orientation, the .NET framework, error-handling, serialization

What is the target audience?

  • Beginners – if you’ve never coded before, you can learn C# step by step
  • Programmers switching to C# from some other language such as Ruby, Python, C or Java

What you get with this course?

Not for you? No problem.
30 day money back guarantee

Forever yours.
Lifetime access

Learn on the go.
Desktop, iOS and Android

Get rewarded.
Certificate of completion


Section 1: Step One - Getting Started

This course will teach you how to program the C# language on Microsoft Windows. This video gives you a quick overview of what to expect from the course.

1.19 MB

This is the course text to download.

4 pages

This document contains links to useful downloads, sources of information and news of developments related to C# programming.

C# Code Archive
If you don't already have a commercial copy of Microsoft Visual Studio, you can download a free copy of Visual Studio Community Edition – a powerful development environment that gives you everything you need to start C# coding today. This video explains how to get a free copy.

If you are impatient to get started, this video will guide you through all the steps from starting Visual Studio to running your program. Follow along to see how to design a user interface and write some simple C# code.  


This video explains some of the differences between editions of Visual Studio. It also explains how to customize the software by changing everything from the items on the menus to the formatting of your code.


Familiarize yourself with the essential features of the Visual Studio environment such as the Design View, Code Editor, Properties and Events panels, Alignment Toolbar and Solution Explorer.


You can follow this course on a Mac (or on Linux) using the free MonoDevelop IDE and Mono framework. Alternatively, you can run Visual Studio in a Virtual Machine, such as Parallels, on a Mac. 

Web links: 



This video provides guidance on downloading and installing the Mono framework and MonoDevelop IDE on OS X.

This lecture explains how to load and run the Visual Studio solutions provided in the source code archive into MonoDevelop (or Xamarin Studio) on a Mac.

MonoDevelop has a built-in visual designer that lets you drag and drop controls onto a form. It’s a bit like the WinForms designer in Visual Studio – but not quite. This video shows how to create a visual application from scratch on OS X.
First Steps in C#
3 questions
Section 2: Step Two - Programming Fundamentals

In this step we look at variables and data types. We discover how to declare variables and assign values to them. We also look at how to create constants whose values cannot be changed. 


How to "cast" and convert one data type to another. Here I show an example of converting some text (a string) entered into a text box into a double (a floating point number) that can be used in a calculation – and then I convert the result (a double) back into a string to be displayed in another text box.

Data types
3 questions
Section 3: Step Three - Conditional Tests and Operators

How to test conditions and take different actions depending on whether or not they are true. Using if and else, switch and case, testing complex conditions and using operators to test for equality or to test if values are greater than or less than one another.


++, --, +=, -= and more: compound operators, increment and decrement operators and the precedence of operators. This video explains some of the nitty-gritty details of using operators to multiply, divide, add and subtract values.

Tests and Conditions
3 questions
Section 4: Step Four - Functions and Arguments

Methods or functions provide ways of dividing your code into named ‘chunks’. Here we look at how to create methods, define lists of parameters or arguments and use the values returned from methods.


In this video I explain the difference between passing arguments ‘by value’ and ‘by reference’. We also look at the similarities and differences between ‘ref’ and ‘out’ parameters.

Functions, methods and arguments
3 questions
Section 5: Step Five - Object Orientation

What exactly is Object Orientation and why does it matter? In this lesson we explain what objects and classes are and how objects can automatically inherit the features of their ancestors.


In this 'hands on' lesson, I’ll guide you through the process of writing a simple class definition and creating an object from it.


In this lesson you’ll learn how to create a descendants of en existing class, call the ancestor class’s constructor and use properties to get and set the values of an object’s variables.

Object Orientation
3 questions
Section 6: Step Six - Arrays and Strings

Arrays are sequential lists of items. Here I explain what an array is, how to create arrays of standard data types or custom objects and how to iterate through the items in an array using various types of loops.


In some ways a string is a bit like an array. It can be treated as a sequential list of characters and you can loop through those characters much as you would loop through array items. Here I also show how to create a simple text editor and a word counter.

Arrays and Strings
3 questions
Section 7: Step Seven - Files, Folders and Input/Output

Here we look at the fundamentals of file handling. How to verify that files exist, how to move or copy files and make use of the File, Directory, Path and Environment classes. We also look at static methods.


The .NET framework provides various Stream classes to simplify the process of reading and writing text and binary files.  This lesson gives an overview of some of the most important Stream and Stream-handling classes.

Files and streams
3 questions
Section 8: Step Eight - Classes, Methods, Structs and Enums

Here we look at some additional features of classes and methods such as partial and static classes and methods with the same names but different arguments


A struct is like a class without inheritance and an Enum is like a categorised set of constants. You may not need to use them in your own programs but you will need to understand them as they occur throughout .NET.

Structs and Enums
3 questions
Section 9: Step Nine - Exception Handling and Debugging

Exceptions are error objects. They come in different varieties and they can crash your programs unless you ‘catch’ them. Here we look at the fundamentals of exception handling in C#.


Use the Visual Studio Debugger to pause the execution of your program at ‘breakpoints’. Then step through your code from one line to another and examine variables to see how their values change as the program runs.

Exceptions and debugging
3 questions
Section 10: Step Ten - Further Adventures in Programming

The .NET framework supplies strongly-typed ‘generic’ collection classes such as List and Dictionary which come with lots of useful methods to add, remove and locate objects in a collection. This lesson gives an overview of generic collections.


C# lets you define ‘virtual’ methods that can be ‘overridden’ by methods of the same name in descendant classes. Here we look at the syntax of overridden methods and consider why they may be useful.

Generics and overriding
3 questions

In the code archive for this step you will find a project that implements a simple exploring-style ‘text adventure’ game. This game illustrates many of the techniques we’ve discussed in the course. In this lesson I’ll guide you through the game and provide some idea for ways in which you can use it to carry on learning more about C#.

And finally...

Instructor Biography

Huw Collingbourne , Director of Technology, SapphireSteel Software

Huw Collingbourne is the technology director at SapphireSteel Software, developers of the “Sapphire” Ruby IDE for Visual Studio and the “Amethyst” IDE for the Adobe Flash Platform. He is author of The Book Of Ruby from No Starch Press. He runs Bitwise Courses and teaches courses on a range of programming topics.

Huw has been a programmer for more than 30 years. He is a well-known technology writer in the UK. For over ten years he wrote the Delphi and Java programming column for PC Plus Magazine. He has also written numerous opinion and programming columns (including tutorials on C#, Smalltalk, ActionScript and Ruby) for a number of computer magazines, such as Computer Shopper, Flash & Flex Developer’s Magazine, PC Pro, and PC Plus. He is the author of the free ebook The Little Book of Ruby and is the editor of the online computing magazine Bitwise.

In the 1980s he was a pop music journalist and interviewed most of the New Romantic stars, such as Duran Duran, Spandau Ballet, Adam Ant, Boy George, and Depeche Mode. He is now writing a series of New Romantic murder mysteries.

At various times Huw has been a magazine publisher, editor, and TV broadcaster. He has an MA in English from the University of Cambridge and holds a 2nd dan black belt in aikido, a martial art which he teaches in North Devon, UK. The aikido comes in useful when trying (usually unsuccessfully) to keep his Pyrenean Mountain Dogs under some semblance of control.

Join the biggest student community


Hours of video content


Course Enrollments




Average Rating
  1. 5 Stars
  2. 4 Stars
  3. 3 Stars
  4. 2 Stars
  5. 1 Stars
    • Carlos Montelongo

    Great for beginners

    Is a great and compact course for beginners in C# world

    • Milan De Keijzer

    Good introduction

    • Kathleen Smart

    Good solid foundation

    Wonderful clear patient explanation of programming basics. Every piece of code cleverly created to illustrate the concept and provided with annotations. For those serious about learning C# and using Visual Studio. Seems slow to begin with but thorough and challenging. Lecturer extremely prompt answering queries.

    • Matthew Tidd

    Very good!

    One of the few courses I've taken where the instructor keeps you engaged throughout the lesson and explains everything clearly.

    • Roberto Nogueira

    Good overview about the Language but lacks variety of teaching techniques

    The course is OK as about a language overview. The course gets boring as you are put as a listener till the end of the course. No multiple teachings styles are applied such as Quiz sessions, more elaborated pictures, challenges and so on. Also I notice that along all the course the author talks looking the code without even referencing the file he is talking about, so sometimes you feel lost about where you are. Apart from this no doubt about the Author, very known and is an authority in this field.

Show more reviews
Ready to start learning?
Preview this course