Lesson 1: Creating Simple C# Programs
Topic 1A: Create a Simple C# Console Application
Topic 1B: Use a Namespace
Topic 1C: Comment Code
Topic 1D: Create a Simple Class Library
Topic 1E: Test a Simple Class Library
Topic 1F: Create a Simple C# Windows GUI Application
Lesson 2: Working with Classes
Topic 2A: Define and Use a Class
Topic 2B: Use Access Modifiers
Topic 2C: Define Namespaces
Topic 2D: Declare an Abstract Class
Topic 2E: Derive a Concrete Class from an Abstract Class
Topic 2F: Use an Abstract Class and its Concrete Derived Class
Lesson 3: Working with Methods
Topic 3A: Implement Constructors
Topic 3B: Implement a Destructor
Topic 3C: Override a Method
Topic 3D: Overload a Method
Topic 3E: Overload an Operator
Topic 3F: Pass Parameters
Lesson 4: Programming with Forms and Controls
Topic 4A: Create a Graphical Program Using Standard Built-in Controls
Topic 4B: Create a Custom Control
Topic 4C: Use Custom Controls on a Form
Lesson 5: Writing Statements that Control Program Flow
Topic 5A: Write Conditional Statements
Topic 5B: Write Loop Statements
Topic 5C: Write Jump Statements
Lesson 6: Using Types in C#
Topic 6A: Use Pre-defined Data Types
Topic 6B: Differentiate Between Reference and Value Types
Topic 6C: Use Casting
Topic 6D: Define and Use a Struct Type
Topic 6E: Define and Use an Enum Type
Lesson 7: Programming with Exceptions
Topic 7A: Catch Exceptions
Topic 7B: Define Custom Exceptions
Topic 7C: Throw Exceptions
Topic 7D: Utilize the finally Keyword
Lesson 8: Working with Interfaces
Topic 8A: Define an Interface
Topic 8B: Implement Interfaces in Derived Classes
Topic 8C: Invoke Interface Methods
Lesson 9: Working with Arrays and Collections
Topic 9A: Define a Rectangular or Higher-Dimensional Array
Topic 9B: Use a Rectangular Array
Topic 9C: Define a Jagged Array
Topic 9D: Use a Jagged Array
Topic 9E: Choose and/or Create a Collection Type
Topic 9F: Use A Collection Type
Lesson 10: Working with Properties and Indexers
Topic 10A: Expose Properties
Topic 10B: Expose Indexers
Lesson 11: Building and Deploying Assemblies
Topic 11A: Create an Assembly with the C# Command Line Compiler
Topic 11B: Use Ildasm
Topic 11C: Deploy an Assembly Locally
Topic 11D: Create and Deploy a Shared Assembly
Lesson 12: Interoperating with Legacy Code
Topic 12A: Write Code that Interoperates with Win32
Topic 12B: Expose Legacy COM Components to C# Clients
Topic 12C: Expose C# Components to Legacy COM Clients