Welcome to ONLC Training Centers

C# Programming Level 1: Introduction for Programmers

Class Dates
(click date for class times)
(click Enroll for locations)

Fee:  $1195

Savings options:

 Learning Credits
Need a price quote?

Follow the link to our self-service price quote form to generate an email with a price quote.

Need a class for a group?

We can deliver this class for your group. Follow the link to request more information.

Email Alert

Receive an email when this class is available as "Ready to Run" or "Early Notice" status.

Train from your home or office

If you have high-speed internet and a computer you can likely take this class from your home or office.

C# Programming Level 1: Introduction for Programmers Course Outline

In this live, instructor-led training course, students who already have a programming background will learn to program in C#. Attendees will learn: how C# works and its place in the world of programming languages; its relationship with the Common Language Infrastructure and .NET Framework; C# data types and operators; to write selection statements and loops; generic programming and working with collections; processing data; and error handling. This C# course is taught using C# 8.

Students new to the C# language who already have experience with other programming languages.

This course is specially designed for individuals with prior programming background. You should also have a working knowledge of Object Oriented Programming concepts. If you have no prior programming experience or are not familiar with Object Oriented Programming, you should consider our "C# Programming Level 1: Introduction for Non-Programmers" course instead. For details on this alternative course for non-programmers, go to:
C# Programming Level 1: Introduction for Non-Programmers


1 Starting with the Building Blocks of C#
  • The history of C#
  • Understanding the CLI
  • Common Type System (CTS)
  • Common Language Specification (CLS)
  • Common Intermediate Language (CIL)
  • Virtual Execution System (VES)
  • The .NET family of frameworks
  • .NET Framework
  • .NET Core
  • Xamarin
  • Assemblies in .NET
  • Global Assembly Cache (GAC)
  • Runtime package store
  • Understanding the basic structure of a C# program
2 Data Types and Operators
  • Basic data types
  • The integral types
  • The floating-point types
  • The decimal type
  • The char type
  • The bool type
  • The string type
  • The object type
  • Variables
  • Naming convention
  • Implicity-typed variables
  • Understanding the scope and lifetime of variables
  • Understanding constants
  • Reference types and value types
  • Value types
  • Reference types
  • Boxing and unboxing
  • Nullable types
  • Arrays
  • One-dimensional arrays
  • Multi-dimensional arrays
  • Jagged arrays
  • Type conversion
  • Implicit type conversion
  • Explicit type conversion
  • User-defined type conversions
  • Conversions with helper classes
  • Operators
  • Arithmetic operators
  • Relational operators
  • Logical operators
  • Bitwise and shift operators
  • Assignment operators
  • Other operators
3 Control Statements and Exceptions
  • Understanding control statements
  • Selection statements
  • Iteration statements
  • The jump statements
  • Exception handling
  • Summary
  • Test what you learned
4 Understanding the Various User-Defined Types
  • Classes and objects
  • Fields
  • Methods
  • Constructors
  • Properties
  • Indexers
  • The this keyword
  • The static keyword
  • The ref, in, and out parameters
  • Methods with a variable number of arguments
  • Named and optional arguments
  • Access modifiers
  • Partial classes
  • Structures
  • Enumerations
  • Namespaces
5 Object-Oriented Programming in C#
  • Understanding OOP
  • Abstraction
  • Encapsulation
  • Inheritance
  • Virtual members
  • Abstract classes and members
  • Sealed classes and members
  • Hiding base class members
  • Interfaces
  • Polymorphism
  • Method overloading
  • Operator overloading
  • SOLID principles
6 Generics
  • Understanding generics
  • Generic types
  • Generic classes
  • Inheritance with generic classes
  • Generic interfaces
  • Variant generic interfaces
  • Generic structures
  • Generic methods
  • Type parameter constraints
7 Collections
  • Introducing the System.Collections.Generic namespace
  • The List<T> collection
  • The Stack<T> collection
  • The Queue<T> collection
  • The LinkedList<T> collection
  • The Dictionary<TKey, TValue> collection
  • The HashSet<T> collection
  • Choosing the right collection type
  • Using thread-safe collections
  • IProducerConsumerCollection<T>
  • BlockingCollection<T>
  • ConcurrentQueue<T>
  • ConcurrentStack<T>
  • ConcurrentBag<T>
  • ConcurrentDictionary<TKey, TValue>
  • Choosing the right concurrent collection type
8 Files, Streams, and Serialization
  • Overview of the System.IO namespace
  • Working with paths
  • Working with files and directories
  • Working with streams
  • Overview of the stream classes
  • Working with file streams
  • Working with memory streams
  • Serializing and deserializing XML
  • Serializing and deserializing JSON
  • Using Json.NET
  • Using System.Text.Json
9 Error Handling
  • Errors
  • Exceptions
  • Catching exceptions
  • The exception objects
  • Conditional catch
  • Throwing exceptions
  • Creating a custom exception type
  • Rethrowing an exception
  • The finally block
  • Debugging and monitoring exceptions
  • Debugging second-chance exceptions
  • Debugging first-chance exceptions
  • AppDomain exception events
  • Logging exceptions
View outline in Word


Attend hands-on, instructor-led C# Programming Level 1: Introduction for Programmers training classes at ONLC's more than 300 locations. Not near one of our locations? Attend these same live classes from your home/office PC via our Remote Classroom Instruction (RCI) technology.

For additional training options, check out our list of Courses and select the one that's right for you.


Class Format
Class Policies
Student Reviews

First Name

Last Name