- Foreward
- Dedication
- Acknowledgments
- About This Book
- Introduction
- Chapter 1: Object-Oriented Basics
- Chapter 2: The .Net Runtime Environment
- Chapter 3: C# QuickStart and Developing in C#
- Chapter 4: Exception Handling
- Chapter 5: Classes 101
- Chapter 6: Base Classes and Inheritance
- Chapter 7: Member Accessibility and Overloading
- Chapter 8: Other Class Details
- Chapter 9: Structs (Value Types)
- Chapter 10: Interfaces
- Chapter 11: Versioning
- Chapter 12: Statements and Flow of Execution
- Chapter 13: Variable Scoping and Definite Assignment
- Chapter 14: Operators and Expressions
- Chapter 15: Conversions
- Chapter 16: Arrays
- Chapter 17: Strings
- Chapter 18: Properties
- Chapter 19: Indexers and Enumerators
- Chapter 20: Enumerations
- Chapter 21: Attributes
- Chapter 22: Delegates
- Chapter 23: Events
- Chapter 24: User-defined Conversions
- Chapter 25: Operator Overloading
- Chapter 26: Other Language Details
- Chapter 27: Making Friends with the .Net Frameworks
- Chapter 28: System.Array and the Collection Classes
- Chapter 29: Threading and Asynchronous Operations
- Chapter 30: Execution-Time Code Generation
- Chapter 31: Interop
- Chapter 32: .NET Frameworks Overview
- Chapter 33: Windows Forms
- Chapter 34: DiskDiff: More Sophistications
- Chapter 35: DiskDiff: Making It Useful
- Chapter 36: Deeper into C#
- Chapter 37: Defensive Programming
- Chapter 38: The Command Line Compiler
- Chapter 39: C# Compared to Other Languages
- Chapter 40: C# Resources and Futures