C# 2005, written by Joel Murach, is a comprehensive tutorial that walks C# beginners through the basics of C# syntax, Windows Forms programming, and ADO.NET database development using Visual Studio 2005. The first half of the book covers working with Visual Studio to create a new Windows Forms project and write basic C# code, including an introduction to variables, control structures, exceptions, arrays and collections. The second half of the book introduces more advanced programming concepts such as object-oriented development including class creation, delegates and events, inheritance, interfaces, and generics, and database programming with ADO.NET including brief tutorials on data binding and data-bound controls. The book closes with a few chapters describing application deployment, Xml development, and files and data stream access methods.
In classic Murach style, every two pages in the book repeats the contents twice; the left-hand page is a detailed description of the concept being covered written in a conversational tone, and the right-hand page contains a recap of this discussion in bulleted-form, with screenshots and / or code samples. This layout is ideal for both novice and expert readers alike; beginners learn faster when a concept is restated / repeated, and experts can skim through the right-hand pages looking for content that is new to them.
There are no assumptions going into the book about the reader's knowledge of programming or C#. As such, both beginners and experienced developers will have something to gain from reading it (but anyone who has used C# before can likely just skim through the first half). The book is meant to be an introduction to the concepts it covers and does a great job at that task, going shoulder-deep into some concepts and waist-deep into others.