Foundations of C# Programming and the .NET Framework



In this course, you will be introduced to the .NET framework through an overview of languages, libraries, services, and tools. You'll then learn the foundations of the C# language. From basics to the newer features such as generics, partial classes, static classes, global namespace qualification, and so forth. are integrated throughout the course.

Note: You are required to bring your own laptop.


Developers who:

  • Want to gain in-depth knowledge of the core C# language
  • Need a fast introduction to the .NET platform architecture
  • Would like an overview of how to navigate the .NET Framework class library


  • Working knowledge of at least one other high-level language.

Note: The difficulty level is ideal for programmers coming from languages like VB6, Pascal, or C. Individuals with a mainframe or scripting background will find the course very challenging - you should study an introductory programming text before attending. If you have some C++ or Java experience, some material will be familiar, but the course will still be beneficial. Experienced C++ or Java programmers should move directly to Essential .NET.

Learning Objectives

  • Examine core language features such as types, variables, and control constructs
  • Use object-oriented features such as class, interface, protection, and inheritance
  • Perform error notification and error handling using exceptions
  • Use properties to implement the private data/public accessor pattern
  • Use namespaces to group related types
  • Use delegates and events to implement callbacks
  • Override Object class methods such as ToString
  • Avoid dll conflicts during deployment
  • Use dynamic binding and polymorphism to write generic code (i.e., less code!)
  • Distinguish between 'implementation inheritance' and 'interface inheritance'
  • Use ADO.NET to connect to SQL Server and run a simple query
  • Build a basic Windows Forms GUI

1. .NET Overview

2. .NET Execution Model

3. Console Application

4. Dynamic-Link Library

5. Language Basics

6. Classes

7. Initialization

8. Properties

9. Static

10. Reference Types

11. Implementation Inheritance 1 and 2

12. Interface Inheritance

13. Object

14. Exceptions

15. Namespaces

16. Event Subscription

17. Windows Forms

18. Introduction to ADO.NET

19. Generics

20. String

21. Assemblies