C# for Beginners to Programming Workbook and Videos

This unique series features 22 lessons containing a workbook chapter with questions, exercises, further readings and one or more videos that step an absolute beginner through learning the most fundamental C# topic matter. If you have never programmed before and want to learn C#, this is a great place to start.

This ship has sailed …

This webpage describes a single series/course, each course containing many screencast videos. HOWEVER …

This series/course has been removed from our collection, probably because we have updated it with a newer version.

Read why I decided to keep old pages like this around. Or better yet, visit the home page … its the best place to get started.

Anatomy of The Curriculum

Each of the “First Time Programmers” series contains two workbooks, a Questions edition and an Answers edition, which is identical to the Questions edition but contains the answers to all the questions in blue text.

Each lesson has one or more parts, as follows:

  •  Lesson Objectives – Easily identify what the goals of the lesson are.
  •  Lesson Text- Typically a few pages explaining the concepts for the lesson.  The readings are concise and focus on concepts and ideas that are appropriate for the level you are at.  The lessons avoid introducing unused or comple
  •  Videos to Watch- Most lessons contain a video that demonstrates the concepts of the lesson.  This is a powerful way to learn because its like watching over the shoulder of an expert while he "shows you the ropes."
  •  Source Code – All source code that is created in the video is available for you to inspect on your own.
  •  Extended Readings – These are links to parts of the Microsoft Developer’s Network that are important for you to know.  These readings
    extend the Lesson Text and often get into much more detail.
  •  Definitions- While you are reading through the Lesson Text and the Extended Readings, you will come across many new terms that you should
    make sure you know.
  •  Lesson Questions – Each lesson will have a number of review questions that re-inforce your new-found knowledge and force you to put it into your own words.
  •  Best Practices – Most of the videos make recommendations that are considered "Best Practices" — approaches that are tried and true.  When available the workbook contains an area to record these Best Practices.
  •  Exercises- Most lessons have a project for you to work on that covers concepts introduced in the readings and the video.  The exercise requires you to open Visual Studio.NET and get your hands dirty.  If you get stuck, you can watch a video that shows how we would have solved that exercise, including the source code.


  1. BEGIN2 – Orientation

    BEGIN2 – Orientation

  2. Workbook ANSWERS

    Includes ONLY the Workbook Answers in PDF format for the ABSOLUTE BEGINNER. Extremely fundamental. PLEASE DO NOT DOWNLOAD IF YOU ALREADY KNOW HOW TO PROGRAM.

  3. Workbook QUESTIONS

    Includes ONLY the Workbook Questions in PDF format for the ABSOLUTE BEGINNER. Extremely fundamental. PLEASE DO NOT DOWNLOAD IF YOU ALREADY KNOW HOW TO PROGRAM.

  4. BEGIN2 – Loading Source Code

    This video demonstrates how to open the source code in the BEGIN2_CODE.zip file into your own personal copy of Visual Studio.NET.

  5. BEGIN2 – Source Code

    Please download this file if you are planning to follow along with the videos and the exercises in the BEGIN2 series. Please unzip this file to a directory on your hard drive called C:BEGIN2 (in order to comply with the workbook’s naming convention).

Back to top

Lesson 1

  1. Lesson 1 – What is Computer Programming?

    This lesson discusses the role of a computer programming language and explains what compilation is and why you must compile your code. It talks about the concepts of a virtual machine, software layers. Finally, it speaks of the goals of all good software developers and provides some tipcs on learning a programming language. THIS FILE IS JUST A PLACEHOLDER – NO VIDEO IS NECESSARY FOR THIS LESSON.

Back to top

Lesson 2

  1. Lesson 2 – Computer Programming Workflow

    Demonstrates the creation of an entire application from start to finish, showing that there are 4 phases: Plan, Develop, Test and Deploy.

Back to top

Lesson 3

  1. Lesson 3 – Obtaining the Tools You’ll Need

    This lessons shows you what software you’ll need to begin writing C# applications, and discusses the different versions available to you. THIS FILE IS JUST A PLACEHOLDER – NO VIDEO IS NECESSARY FOR THIS LESSON.

Back to top

Lesson 4

  1. Lesson 4 – Creating a User Interface

    Demonstrates how to create a Graphical User Interface in Visual Studio.NET, and outlines several best practices when designing forms applications.

  2. Lesson 4 – Exercise

    Solution to the exercise in Lesson 4.

Back to top

Lesson 5

  1. Lesson 5 – Handling Events

    Explains and demonstrates how to handle events in C# Windows Forms.

  2. Lesson 5 – Exercise

    Solution to the exercise in Lesson 5.

Back to top

Lesson 6

  1. Lesson 6 – Setting Properties in Code

    Explains the difference between Design Time and Run Time, and shows how to set and get properties of objects at runtime (in code).

  2. Lesson 6 – Exercise

    Solution to the exercise in Lesson 6.

Back to top

Lesson 7

  1. Lesson 7 – Data Type Variable Declaration

    Explains and Demostrates how various data types, how to declare and use variables within an application.

  2. Lesson 7 – Exercise

    Solution to the exercise in Lesson 7.

Back to top

Lesson 8

  1. Lesson 8 – Statements

    This video defines what statements are and that parts of a well formed statement. It discusses expressions and how they are different from statements. Then it moves on to operators; identifying common families of operators. Finally, it explains punctuators. THIS FILE IS JUST A PLACEHOLDER – NO VIDEO IS NECESSARY FOR THIS LESSON.

Back to top

Lesson 9

  1. Lesson 9 – Program Flow

    This lesson discusses selection statements (also known as branching) and iteration statements (also known as recursion) and how to use the two types of statements together in C#.

  2. Lesson 9 – Exercise

    Solution for the exercise in lesson 9.

Back to top

Lesson 10

  1. Lesson 10 – Methods

    This lesson discusses what methods are, how to create both methods that return values as well as methods that do not return values (void). It also demonstrates how create methods that access parameters and how to call methods. Finally, it covers variable scope as it applies to methods.

  2. Lesson 10 – Exercise

    This is the solution for the exercise in lesson 10.

Back to top

Lesson 11

  1. Lesson 11 – Object Oriented Programming with Classes

    This lesson seeks to explain Object Oriented Programming and why its an improvement over procedural programming. Also, it explains the fundamental building blocks of OO: classes and how they are used in C#. THIS FILE IS JUST A PLACEHOLDER – NO VIDEO IS NECESSARY FOR THIS LESSON.

Back to top

Lesson 12

  1. Lesson 12 – Fields, Properties and Methods

    This lesson defines what fields, properties and methods are and identifies best practices for creating and naming them in classes.

  2. Lesson 12 – Exercise

    This is the solutions for the exercise in lesson 12.

Back to top

Lesson 13

  1. Lesson 13 – Object Lifetime

    This lesson discusses class constructors and how to create overloaded constructors. It discusses the lifetime of an object and what happens when your application no longer needs an object, and the role of the Garbage Collector. Finally, it discusses how to create destructors in C#.

  2. Lesson 13 – Exercise

    This is the solution to the exercise in lesson 13.

Back to top

Lesson 14

  1. Lesson 14 – What is the .NET Framework?

    This video helps you understand the various parts of the .NET Framework and how they work together. It also discusses the purpose of namespaces and how to create namespaces in your own applications.

Back to top

Lesson 15

  1. Lesson 15 – Keeping Track of Data with Arrays

    This lesson explains what arrays are, how to dimension an array, how to use recursion (iteration statements) with arrays and how to create multidimensional arrays.

  2. Lesson 15 – Exercise

    This is the solution to the exercise in lesson 15.

Back to top

Lesson 16

  1. Lesson 16 – Obtaining Data from a Text File

    This lesson explains how text files are used in some legacy systems to exchange information between departments or companies. It explores the System.IO namespace and demonstrates how to open, read from, write to and close text files.

  2. Lesson 16 – Exercise

    This is the solution to the exercise in lesson 16.

Back to top

Lesson 17

  1. Lesson 17 – Obtaining Data from a Database

    This lesson explains what a database is and explains major concepts like tables, rows, columns, relationships and keys. It explains the difference between accessing a database in a connected versus disconnected manner. Finally, it demonstrates how to access a database using C# and ADO.NET and display data from the database on to a Windows Form.

Back to top

Lesson 18

  1. Lesson 18 – Databinding Data to User Interface Controls

    This lesson explains what data-binding is and how it can be used to quickly assemble a data-centric application. It explains how to connect to a database in a disconnected manner. Then it dives into the inner workings of databinding, reviewing the BindingManagerBase object and the DataSource and DataMember properties of databindable controls.

  2. Lesson 18 – Exercise

    This is the solution to the exercise in lesson 18.

Back to top

Lesson 19

  1. Lesson 19 – Inserting, Updating and Deleting Data in a Database

    This lesson explains why data-binding is not always preferable when working with data from a database. It explains how parameterized Stored Procedures work in a database like Microsoft SQL Server, and demonstrates the use of the DataCommand’s Parameter collection.

Back to top

Lesson 20

  1. Lesson 20 – Handling Exceptions

    This lesson explains what Exceptions are in .NET, and how Structured Exception Handling is employed in C#. It also discusses how to throw or raise exceptions from one software layer (Component) to the next and other general principles of handling exceptions in a well built application.

Back to top

Lesson 21

  1. Lesson 21 – Debugging Applications

    This lesson explains how to debug applications using the Visual Studio.NET IDE. As you will see, Visual Studio.NET has a number of useful tools and techniques you can employ that will give you tremendous control over the execution and monitoring of the application while in debug mode.

Back to top

Lesson 22

  1. Lesson 22 – Building an ASP.NET Application

    This lesson explains how to employ your new-found knowledge of C# to create dynamic ASP.NET applications. It explains some of the similarities between developing Windows Forms and Web Forms applications. It also dives into the concept of PostBack, as well as the Session and Application objects.

  2. Lesson 22 – Exercise

    This is the solution to the exercise in lesson 22.

Back to top

10 Year Anniversary Sale - 30% Off - ENDING SOON!!!    Learn more ...