New Foreword by Mads Torgersen, C# Program Manager, Microsoft "Essential C# 5.0" is a well-organized, no-fluff guide to all versions of C# for programmers at all levels of C# experience. Fully updated to reflect new features and programming patterns introduced with C# 5.0 and .NET 4.5, this guide shows you how to write C# code that is simple, powerful, robust, secure, and maintainable. Microsoft MVP Mark Michaelis and C# principal developer Eric Lippert provide comprehensive coverage of the entire language, offering a complete foundation for effective software development. The authors illustrate key constructs with succinct, downloadable code examples. Graphical mind maps at the beginning of each chapter outline the material that is covered and how individual topics interrelate. This edition also includes new boxed C# Coding Guidelines that call attention to today's best practices for writing C# code. Separate indexes of C# versions 3.0, 4.0, and 5.0 make it easy to find answers specific to whatever version of C# you are using. Throughout, topics intended for beginners and advanced readers are clearly marked. If you're new to C#, this guide will help you start writing significant code quickly. If you're an experienced C# developer, you'll gain insight into today's most complex programming challenges and techniques as you master key C# 5.0 innovations such as async support for Windows 8/Windows RT development. No matter how advanced your skills become, you'll rely on this indispensable reference. "Essential C# 5.0" covers Mastering C# data types, operators, control flow, methods, and parametersMaking the most of C# object-oriented constructs, including classes, inheritance, interfaces, and moreBuilding reliable, effective exception handling into your codeUsing generics, delegates, Lambda expressions, and events to reduce code complexityLearning dynamic programming with reflection and attributesQuerying virtually any type of data with LINQ with Query ExpressionsCreating custom collections that operate against business objectsUnderstanding the Common Language Infrastructure and C# in the context of the .NET 4.5 development platformTaking advantage of declarative programming, embedded metadata, reflection, and attributesThoroughly mastering multithreading and synchronization, including the new Windows 8 async paradigmUsing P/Invoke, pointers, and direct memory manipulation to interoperate with code in other languagesUnderstanding how C# programs relate to the underlying runtime
This is a pretty good book on C# if you have already have some knowledge of computer programming. If you're new to computer programming, then this probably isn't a good choice to start out with since it isn't a tutorial book. It has clean and concise explanations for language features and concepts.