Programming Books C Java PHP Python Learn more Browse Programming Books
Programming C# 4.0: Building Windows, Web, and RIA Applic... and over one million other books are available for Amazon Kindle. Learn more

Sorry, this item is not available in
Image not available for
Image not available

To view this video download Flash Player


Sign in to turn on 1-Click ordering
Sell Us Your Item
For a $2.00 Gift Card
Trade in
More Buying Choices
Have one to sell? Sell yours here
Start reading Programming C# 4.0 on your Kindle in under a minute.

Don't have a Kindle? Get your Kindle here, or download a FREE Kindle Reading App.

Programming C# 4.0: Building Windows, Web, and RIA Applications for the .NET 4.0 Framework (Animal Guide) [Paperback]

Ian Griffiths , Matthew Adams , Jesse Liberty
4.0 out of 5 stars  See all reviews (12 customer reviews)

List Price: $54.99
Price: $35.78 & FREE Shipping. Details
You Save: $19.21 (35%)
o o o o o o o o o o o o o o o o o o o o o o o o o o o o o o o o o o o o o o o o o o o o o o o o o o o o o o o o o o o o o o o o
Only 8 left in stock (more on the way).
Ships from and sold by Gift-wrap available.
Want it Monday, July 14? Choose One-Day Shipping at checkout. Details
Free Two-Day Shipping for College Students with Amazon Student


Amazon Price New from Used from
Kindle Edition $25.49  
Paperback $35.78  
Unknown Binding --  
Shop the new
New! Introducing the, a hub for Software Developers and Architects, Networking Administrators, TPMs, and other technology professionals to find highly-rated and highly-relevant career resources. Shop books on programming and big data, or read this week's blog posts by authors and thought-leaders in the tech industry. > Shop now
There is a newer edition of this item:
Programming C# 5.0: Building Windows 8, Web, and Desktop Applications for the .NET 4.5 Framework Programming C# 5.0: Building Windows 8, Web, and Desktop Applications for the .NET 4.5 Framework 4.2 out of 5 stars (13)
In Stock.

Book Description

August 28, 2010 0596159838 978-0596159832 6th

With its support for dynamic programming, C# 4.0 continues to evolve as a versatile language on its own. But when C# is used with .NET Framework 4, the combination is incredibly powerful. This bestselling tutorial shows you how to build web, desktop, and rich Internet applications using C# 4.0 with .NET's database capabilities, UI framework (WPF), extensive communication services (WCF), and more.

In this sixth edition, .NET experts Ian Griffiths, Matthew Adams, and Jesse Liberty cover the latest enhancements to C#, as well as the fundamentals of both the language and framework. You'll learn concurrent programming with C# 4.0, and how to use .NET tools such as the Entity Framework for easier data access, and the Silverlight platform for browser-based RIA development.

  • Learn C# fundamentals, such as variables, flow control, loops, and methods
  • Build complex programs with object-oriented and functional programming techniques
  • Process large collections of data with the native query features in LINQ
  • Communicate across networks with Windows Communication Foundation (WCF)
  • Learn the advantages of C# 4.0's dynamic language features
  • Build interactive Windows applications with Windows Presentation Foundation (WPF)
  • Create rich web applications with Silverlight and ASP.NET

Frequently Bought Together

Programming C# 4.0: Building Windows, Web, and RIA Applications for the .NET 4.0 Framework (Animal Guide) + C# 4.0 in a Nutshell: The Definitive Reference + C# 4.0 Pocket Reference (Pocket Reference (O'Reilly))
Price for all three: $80.59

Buy the selected items together

Editorial Reviews

Book Description

Building Windows, Web, and RIA Applications for the .NET 4.0 Framework

About the Author

Ian Griffiths is an independent WPF consultant, developer, speaker and Pluralsight instructor and a widely recognized expert on the subject. He lives in London but can often be found on various developer mailing lists and newsgroups, where a popular sport is to see who can get him to write the longest email in reply to the shortest possible question. Ian maintains a popular blog at and is co-author of "Windows Forms in a Nutshell" and of "Mastering Visual Studio .NET".

Matthew is the Director of Development at Digital Healthcare Ltd. The last three years have kept him fully occupied in the development of a C#/.NET-based distributed imaging platform for healthcare applications. Before that, he studied Natural Sciences at Cambridge University, worked on banking and imaging applications in North America, became a fully-paid-up C++ junkie, and was the lead architect on software solutions for drug-discovery for a large US corporation. He thinks that .NET is a major philosophical stride forward for the computer industry: so much so that he almost doesn't miss his first love - generics - in C#. He has written articles and given papers on the subject to both technical and non-technical audiences, and looks forward to the day when he doesn't have to answer the question 'So, what is .NET?' any more!

Jesse Liberty, "Silverlight Geek", is a senior program manager for Microsoft Silverlight in the Silverlight Development Division where he is responsible for the creation of tutorials, videos and other content to facilitate the learning and use of Silverlight.

Even before joining Microsoft, Jesse is well known in the industry in part because of his many bestselling books, including O'Reilly Media's Programming .NET 3.5, Programming C# 3.0, Learning ASP.NET with AJAX and the soon to be published Programming Silverlight. He has over two decades experience writing software, consulting and training, with stints as at AT&T as a Distinguished Software Engineer and at Citibank as a Vice President in the Information Division.

Product Details

  • Series: Animal Guide
  • Paperback: 858 pages
  • Publisher: O'Reilly Media; 6th edition (August 28, 2010)
  • Language: English
  • ISBN-10: 0596159838
  • ISBN-13: 978-0596159832
  • Product Dimensions: 9.2 x 6.9 x 1.9 inches
  • Shipping Weight: 3 pounds (View shipping rates and policies)
  • Average Customer Review: 4.0 out of 5 stars  See all reviews (12 customer reviews)
  • Amazon Best Sellers Rank: #505,868 in Books (See Top 100 in Books)

More About the Authors

Discover books, learn about writers, read author blogs, and more.

Customer Reviews

Most Helpful Customer Reviews
19 of 19 people found the following review helpful
3.0 out of 5 stars Thorough but long winded February 13, 2011
By J. Lacy
This book spends too much time on examples of imaginary applications and not enough time on the concrete structures of the language itself. For instance, the chapter on delegates starts with 5 pages describing an imaginary document class and all the different ways you might try to link up Documents to processes. The actual implementation of what a delegate is and how to use one is lost in a mire of unrelated code which is suppose to motivate the necessity of the delegate itself.

I must admit the book is packed with information and covers all the topics you could possibly want from the core language. Little asides and boxes give nice insights into whats happening in the underlying .NET framework and the CLR. The sheer information content is why I give it three stars.

I also think this book might be more useful for someone who has never programmed before. But for anyone who has experience in another language, the invented code and contrived applications will quickly become tedious and youll find yourself scanning through pages just to find the underlying syntax of a simple language structure.

I think this might be a good book for beginners, but an experienced programmer might want to go directly to the "Nutshell" version.
Was this review helpful to you?
8 of 8 people found the following review helpful
4.0 out of 5 stars A Great Resource for C# Developers December 24, 2010
What this book does well:

Starting with a basic implementation of "Hello World" and culminating with a chapter on the new dynamic type, this book manages to quickly and concisely explain basic and complex data structures, proper error handling, file I/O, and basic use of databases. The full powers of LINQ, threading (and parallel programing) are explained in later chapters.

Where this book may fall down:

For a beginning developer I can see the heft and breadth of this book being a little daunting. Though there is an excellent progression from beginning and intermediary programming examples into more complex ones, at 800 pages it could be overwhelming. While reading the book I found around 5 sections that talked about new functionality afforded either in the use of C# 4.0 or Visual Studio 2010. Chapter 18's explanation of the new dynamic type is incredibly thorough.

Final Thoughts:

If you are looking for a book that spends its entirety explaining the differences found in the newest version of the .NET Framework then this is not the book for you.

If you are looking for a resource that highlights these differences amidst a near encyclopedic text of the intricacies of programming in C# then this is definitely the book for you.

If you already own Programming C# 3.5, I wouldn't necessarily suggest plopping down the $55 for this edition. But if you don't I would highly recommend this book. I can see it becoming a trusted resource when I need to explore the more complex development practices in C#, or just when I need to brush up on others.
Was this review helpful to you?
13 of 15 people found the following review helpful
1.0 out of 5 stars Programmers: Avoid This Book September 5, 2011
Format:Paperback|Verified Purchase
This book is far too long-winded and seems to try to tell stories via code examples rather than simply and directly cover the topic. I read the C# 3.0 book cover-to-cover and it was SO much better organized with far fewer digressions and fluff. The flow of the topics in this book are clumsy at best. When I saw Jesse Liberty's name listed last I should have inspected further. I would suggest avoiding this book, I'm sorry I spent the money on it.
Comment | 
Was this review helpful to you?
2 of 2 people found the following review helpful
3.0 out of 5 stars There Is No Substitute For Experience August 24, 2011
Format:Paperback|Verified Purchase
I purchased this book at the beginning of the summer to
get a better understanding of C#. I have programmed in
PYTHON, C++, JAVA, VB and several other robotics specific
languages; so I am not newbie to programming. Having only
a basic understanding of C# I thought that this book would
allow me to figure the rest out. My first impression of
the book was that it moved really fast for any would-be
beginner. As I progressed further into the book I noticed
that the examples in the book taught concepts but there
not to many actual programs to look at; a fully functional
program demonstrating what the conceptual code has been
showing would make this book easier to follow for a
beginner. All in all this book is well written and does
an excellent job of teaching concepts but is not very
accessible to C# newcomers.
Comment | 
Was this review helpful to you?
2 of 2 people found the following review helpful
5.0 out of 5 stars Highly Recommended March 8, 2011
This is a great Reference book, if you are a programmer (like me) and want to transfer to this is the right book, it explains, everything! in detail from basic Data Types to Interop with COM and Win32, going through Databases, WCF,RIA, ASP.NET and lots more, there is a chapter dedicated to explain XLM and LINQ to XML, it was very helpful for me, and it is going to save you a lot of time if you are developing ASP.NET applications.
Comment | 
Was this review helpful to you?
4 of 5 people found the following review helpful
3.0 out of 5 stars not up to usual o'reilly standards October 31, 2011
This book, while hefty and clearly the result of a lot of informed labor, unfortunately does not display the expected clarity and conciseness of the O'Reilly brand. After a while I began just skimming through it, trying to pick out the important bits and pieces of information from all the interstitial distractions, like a hen looking for corn in the barnyard.

One of the major drawbacks of this text is that the code samples are all-too-often contrived and confusing. For example:

public void Subscribe (DocumentProcessor processor)
processor.Processing += processor_Processing;
processor.Processed += processor_Processed;

I had to go over that code five times, trying to puzzle out how it could possibly work (I interpreted it as "A += A"), before I finally noticed the difference between the periods (.) and the underscores (_).

There are also lots of code examples that look something like this:

public ProcessCancelEventArgs (Document document)
Document = document;
public Document Document

When all the variables and parameters have the same name (in this case, "Document" or "document"), comprehension is a rapid casualty. Indeed, I still don't understand that particular example.

The second major drawback of the book is that terms are often skipped over, or left undefined. For example: "The interface definition states that ...the type argument is prefixed with the 'out' keyword." But what does the 'out' keyword mean? Its definition is left to the reader's imagination.

Overall, this book may have value for people who are already expert in C# and are looking for some in-depth knowledge of the intricacies of the language, but for people learning the language -- whether novice or expert programmers -- there are probably better choices.
Comment | 
Was this review helpful to you?
Most Recent Customer Reviews
5.0 out of 5 stars Good place to start, excellent place to learn.
This is an excellent resource and a true gem among the C# books out there. Not only is it an easy read, but I was able to walk through this entire book and could have gone without... Read more
Published on March 11, 2012 by Ashlee
5.0 out of 5 stars Great reference
Great book for beginners and seasoned programmers a like.
Well writen and gives some interesting insights and good programming practices.
Published on August 30, 2011 by Elad Lachmi
5.0 out of 5 stars Best Tutorial/Book on C# I've Found
I started programming using the dynamic, interpreted languages Ruby and Python. I never did much with those languages besides learn some of the fundamentals before deciding I... Read more
Published on July 12, 2011 by Austin
5.0 out of 5 stars Very good for the intermediate/professional C# developer
After working with C# for 3-4 years and having read through the OReilly "Learning C#" book, I felt it was time to move to something more comprehensive and advanced. Read more
Published on April 30, 2011 by W. Carroll
5.0 out of 5 stars Its got EVERYTHING!
This book is really fantastic. it covers all bases, from basics to advanced topics. I learned about 3 new collction types new in C# 4.0 that I have never heard of... HashSet? YES!!
Published on March 9, 2011 by Shawnm
4.0 out of 5 stars A big book
As with any language that is evolving so is C. From C to C+ to C++ to C#. Having programmed in C from time to time and now trying to learn C# this book gives a great background to... Read more
Published on February 13, 2011 by Kent
Search Customer Reviews
Search these reviews only

What Other Items Do Customers Buy After Viewing This Item?


There are no discussions about this product yet.
Be the first to discuss this product with the community.
Start a new discussion
First post:
Prompts for sign-in

Look for Similar Items by Category