locked
Which book is best for learning C#? RRS feed

  • Question

  • Hi, I was wondering if anyone could recommend a good book for learning C#. I already know ANSI C++, which means I don't know MFC programming. I'm very good at the language level (OOP an' all), but I couldn't decide which book would be best for me. Any advice will be appreciated. The books which I short-listed are :

    1) Microsoft® Visual C#® 2005 Step by Step (by John Sharp)
    http://www.microsoft.com/MSPress/books/7655.asp

    2) Programming Microsoft® Visual C#® 2005: The Language (by Donis Marshall)
    http://www.microsoft.com/MSPress/books/7219.asp

    Which do you think is better? Or if you have a better book in mind, please tell me.

    Thanks!
    Friday, August 25, 2006 5:43 PM

Answers

  •  

    I am an avid reader of programming books. Here is my top list:

     

    1. "Accelerated C#" by Trey Nash
    2. "Programming .NET Components" by Juval Lowy [Awesome]
    3. "C# 3.0 In a Nutshell"
    4. "Head First Design Patterns" [in Java but good]
    5. "CLR Via C#" by Jeffrey Richter
    6. "Code Complete"

    7. "Pro C# 2008 and the .NET 3.5 Platform"
    8. "Framework Design Guidelines"
    9. "WCF" by Juvy Lowy [Advanced stuff, but excellent]
    10. "Pro LINQ Language Integrated Query in C# 2008"

    11. Programming ADO.NET Core Reference (David Sceppa)

     

    I agree with Blair Allen Stark on what he he said "Stay away from Wrox". However, I like MSPress a lot.

    Friday, August 29, 2008 3:33 PM
  • Wow! I thought people stopped anwering those threads which already had two or three replies. Good advice from all of you, thanks once again. Inspiring words from rayms. Both rayms and Opfer have almost convinced me that I don't really need a book. But as THEMike has said, there are some things you can learn better from a book. I'd feel kinda lost trying to learn on my own with only the online reference, but I do believe it is possible.  But then again, it would take a little longer to learn that way, plus when you read a book, you know you've learnt everything.

    Going by the numbers, Wrox seems to lead the way. Here are the nominees!
    1) #3 - Wrox "Professional C# 2005"
    2) #2 - Wrox "Beginning Visual C# 2005"
    3) #2 - NO BOOK
    4) #1 - Microsoft Press "Microsoft® Visual C#® 2005 Step by Step" (by John Sharp)
    5) #1 - Microsoft Press "Programming Microsoft® Visual C#® 2005: The Language" (by Donis Marshall)
    6) #1 - Microsoft Press "Microsoft® Visual C#® 2005 Express Edition: Build a Program Now!" (by Patrice Pelland)
    7) #1 - Wrox "Visual C# 2005 Express Edition Starter Kit" (by F. Scott Barker)
    8) #1 - APress "Beginning Visual C# 2005 Express Edition: From Novice to Professional" (by Peter Wright)
    9) #1 - APress "A Programmer's Introduction to C# 2.0, Third Edition" (by Eric Gunnerson)

    Here are their respective links :
    1) http://www.wrox.com/WileyCDA/WroxTitle/productCd-0764575341.html
    2) http://www.wrox.com/WileyCDA/WroxTitle/productCd-0764578472.html
    3)
    4) http://www.microsoft.com/mspress/books/7219.asp
    5) http://www.microsoft.com/MSPress/books/7655.asp
    6) http://www.microsoft.com/MSPress/books/8776.asp
    7) http://www.wrox.com/WileyCDA/WroxTitle/productCd-0764589555.html
    8) http://www.apress.com/book/bookDisplay.html?bID=10018
    9) http://www.apress.com/book/bookDisplay.html?bID=454

    Look's like we've got a winner - Wrox's Professional C# 2005. It is for experienced programmers, and it covers pretty much everything you need to know about C#.

    Winner :
    Wrox's Professional C# 2005

    Note: If anyone has any other suggestions, or would like to share their views on other books, please feel free to post!

    Monday, August 28, 2006 12:51 PM
  •  peterwt wrote:

    There is now a new version of John Sharp's book titled "Microsoft® Visual C#® 2008 Step by Step".

    I presume it is an updated version of "Microsoft® Visual C#® 2005 Step by Step".

     

    Peter

     


    I would not invest in that text.  If you are new to programming you need to learn basic programming concepts.  That book walks you through a few simple programs, and gets you "up and running" with the IDE.  But, it does little to teach you the actual language, or what programming actually is.

    I do not know new programmers every get their bootstraps off the ground with the available literature.  Invest in a couple of abstract books that use "pseudo code" in their examples.  There are many basic concepts that you need to wrap your head around that are language independent.

    The Microsoft Press books, like "C#, Language Reference" for example, are good but not complete.  That is why John Grove has such an extensive list.  There is no single reference that will get you up to speed.  

    Finally, the best learning experience will come from simple brain busting practice at coding.  When you a text you think you like that's loaded with code examples, try typing them in yourself instead of downloading or pasting in the code.

    Hope this helps.
    Friday, August 29, 2008 8:14 PM

All replies

  • The one I bought was 'Beginning visual c# express addition" by peter Wright - Apress - isbn 1-59059 -549 -1. I wanted something easy to read, with a bit of explanation, to get me quickly up to speed.

    In c#, set the help options to c# only, use this forum, and you will, within a week or two, get to where you want to be. I find a number of the 'fatter' books simple copy chunks from the help files....

    I was able to get into a local shop, they had about 8 c# type books, incuding some microsoft ones. It is not easy buying, without looking.

    Best wishes, Ray

    Friday, August 25, 2006 9:09 PM
  • hi,

    this is the same question

    http://forums.microsoft.com/MSDN/ShowPost.aspx?PostID=436671&SiteID=1

    hope this helps

    Saturday, August 26, 2006 3:18 AM
  • Here are my favourites :

     

    “Build a Program NOW Microsoft Press” – just for start. Then “Visual C Sharp 2005 Express Edition Starter Kit – Wrox Press” and after those  “Wrox Professional C Sharp 2005 Nov 2005”.

    Sunday, August 27, 2006 12:09 AM
  • Thank you everyone, for your replies. But I still can't decide. I know, when I started off with learning C++, I was just as confused as I was now. But when I learnt the whole thing, at the end I realized it didn't really matter which book I read from; any book would do the job. But! This is different. The question remains :

    1) Are you guys sure Wrox press books might be better than Microsoft Press books?

    2) Since I'm already pretty good at C++ (at the language level), I thought I don't really need to learn C# as a language (atleast as a beginner). So, considering this, I was wondering which one book might cover all language aspects of C#, as well as using the .NET libraries in C#.

    3) Does anybody know if 'Microsoft® Visual C#® 2005 Step by Step (by John Sharp)' covers both the language and .NET libraries or does 'Programming Microsoft® Visual C#® 2005: The Language (by Donis Marshall)' do it? Are they both required or will it suffice to read only the second book?

    (I know, this is getting kinda annoying. Me getting so worked up about which book to read. You guys must be like, "Get any book! It doesn't really matter!")

    Thnx again for your replies. Keep up the good work guys!
    Sunday, August 27, 2006 6:04 AM
  • Those Wrox press books are OK. Now I'm reading Microsoft press book "C# for Java developers" and it's also good. Anyway it all depends on what you like, and I really liked that  Wrox Professional C Sharp 2005 Nov 2005. Maybe you won't like it, but all you have to do is try and see.
    Sunday, August 27, 2006 10:42 AM
  • Most books with titles like "for beginners", "in 24 days", "Step by Step" are aimed at people with no programming experience whatsoever.

    They'll be too slow and lightweight for you, spending copious amounts of pages on basic programming principles rather than teaching the specific language you're interested in.

    I'm currently working my way through "A programmer's introduction to C# 2.0, 3rd edition", released by APress. It's a good book that assumes programming knowledge (though it could be a little faster paced for me at times) while assuming no previous experience with C#.
    It's also independent of Visual Studio, so doesn't tell you to "press button XXX" but rather focusses on the language itself.
    ISBN 1590595017

    Sunday, August 27, 2006 11:29 AM
  • Don't buy any book. The journey is the destination, if its a hobby, as you say.

    I would take an existing piece of software I had written in c++, then write it again in c#. See where the differances are. When you use the help system, it highlights the .net stuff. Sort of learn by immersion. Once you've got it working, start refactoring, see where your thinking needs straightening out. Then buy a referance book for that area, if necessary.

    c++ is possibly a bad place to start from, it sort of combines oo and linear programming in a pretty thick soup, imho. I like c# because of its 'conciseness'. For what _you_ want to do, in whatever way you want to do it, there is no best book, unless you write it yourself.

    Best wishes, Ray

     

    Sunday, August 27, 2006 11:31 AM
  • I recently made the same step that you're about to do. I didn't buy any book, since I thought, C# can't be so much different from C++ (also having seen some sample code in the help files of VC++).

    So I just typed "from c++ to c#" into Google and what came up were tons of websites explaining exactly what the differences are, what you have to be careful about, etc. when coming from C++ (among these search results is also an MSDN article written by Jesse Liberty, very good stuff).

    That was more than enough for me to get started. These articles explained all the language differences between C++ and C# and also gave the background knowledge of the .NET Framework that is needed to get a grasp on how references work, etc. And it'll only take you about an hour or two.

    The only thing that is left to do for you after reading those is to write a few programs to get used to the .NET Base Class Library but in my opinion, it's impossible to give you that experience in a book anyway, you just gotta learn it by doing it, the reference included in VC# Express Edition is a really nice one, too, so you should be fine learning all that by yourself just using the reference.

    Sunday, August 27, 2006 9:24 PM
  • I'm an experienced programmer, I've been coding professionaly for years. However, mostly I do web development work in a programmers text editor.

    What I'm looking for is a good book for experienced programmers about the C# Express edition, something that will really show me what I can get out of the IDE.

    Programming in C# for the most part I can pick up just fine from the MSDN docs, online tutorials and so on, what I've found invaluable in my endless technology switching is books that cover the little features of an IDE that you'd never discover on your own. For example, I'd been coding in Borland Delphi 5 for about 18 months before an experienced programmer pointed out a few keyboard shortcuts to autocomplete prototype/function def style stuff that really speeded up my progress.

    Anyone got any suggestions?

    Cheers
    Monday, August 28, 2006 9:32 AM
  • Wow! I thought people stopped anwering those threads which already had two or three replies. Good advice from all of you, thanks once again. Inspiring words from rayms. Both rayms and Opfer have almost convinced me that I don't really need a book. But as THEMike has said, there are some things you can learn better from a book. I'd feel kinda lost trying to learn on my own with only the online reference, but I do believe it is possible.  But then again, it would take a little longer to learn that way, plus when you read a book, you know you've learnt everything.

    Going by the numbers, Wrox seems to lead the way. Here are the nominees!
    1) #3 - Wrox "Professional C# 2005"
    2) #2 - Wrox "Beginning Visual C# 2005"
    3) #2 - NO BOOK
    4) #1 - Microsoft Press "Microsoft® Visual C#® 2005 Step by Step" (by John Sharp)
    5) #1 - Microsoft Press "Programming Microsoft® Visual C#® 2005: The Language" (by Donis Marshall)
    6) #1 - Microsoft Press "Microsoft® Visual C#® 2005 Express Edition: Build a Program Now!" (by Patrice Pelland)
    7) #1 - Wrox "Visual C# 2005 Express Edition Starter Kit" (by F. Scott Barker)
    8) #1 - APress "Beginning Visual C# 2005 Express Edition: From Novice to Professional" (by Peter Wright)
    9) #1 - APress "A Programmer's Introduction to C# 2.0, Third Edition" (by Eric Gunnerson)

    Here are their respective links :
    1) http://www.wrox.com/WileyCDA/WroxTitle/productCd-0764575341.html
    2) http://www.wrox.com/WileyCDA/WroxTitle/productCd-0764578472.html
    3)
    4) http://www.microsoft.com/mspress/books/7219.asp
    5) http://www.microsoft.com/MSPress/books/7655.asp
    6) http://www.microsoft.com/MSPress/books/8776.asp
    7) http://www.wrox.com/WileyCDA/WroxTitle/productCd-0764589555.html
    8) http://www.apress.com/book/bookDisplay.html?bID=10018
    9) http://www.apress.com/book/bookDisplay.html?bID=454

    Look's like we've got a winner - Wrox's Professional C# 2005. It is for experienced programmers, and it covers pretty much everything you need to know about C#.

    Winner :
    Wrox's Professional C# 2005

    Note: If anyone has any other suggestions, or would like to share their views on other books, please feel free to post!

    Monday, August 28, 2006 12:51 PM
  • ........plus when you read a book, you know you've learnt everything.
    Monday, August 28, 2006 5:52 PM
  • I told you 
    Tuesday, August 29, 2006 12:14 AM
  • Another good book recently released you should not overlook is:

    Murach's C# 2005

    by Joel Murach

    ISBN # 1-890774-37-5

    As a college instructor, I have accumulated a collection of about three dozen books on both VB and C# 2005 (including most of the aforementioned titles).  This book looks like one of the best.  It clearly explains the IDE in the first few chapters (for both the professional and express editions) and goes on to more advanced stuff later in the book.

    http://www.murach.com/books/csh5/index.htm

    Tuesday, August 29, 2006 5:42 PM
  •  Furqan Farooqui wrote:

    Going by the numbers, Wrox seems to lead the way. Here are the nominees!
    1) #3 - Wrox "Professional C# 2005"
    2) #2 - Wrox "Beginning Visual C# 2005"
    3) #2 - NO BOOK
    4) #1 - Microsoft Press "Microsoft® Visual C#® 2005 Step by Step" (by John Sharp)
    5) #1 - Microsoft Press "Programming Microsoft® Visual C#® 2005: The Language" (by Donis Marshall)
    6) #1 - Microsoft Press "Microsoft® Visual C#® 2005 Express Edition: Build a Program Now!" (by Patrice Pelland)
    7) #1 - Wrox "Visual C# 2005 Express Edition Starter Kit" (by F. Scott Barker)
    8) #1 - APress "Beginning Visual C# 2005 Express Edition: From Novice to Professional" (by Peter Wright)
    9) #1 - APress "A Programmer's Introduction to C# 2.0, Third Edition" (by Eric Gunnerson)
    Look's like we've got a winner - Wrox's Professional C# 2005. It is for experienced programmers, and it covers pretty much everything you need to know about C#.

    Note: If anyone has any other suggestions, or would like to share their views on other books, please feel free to post!

    suggestion: buy them all :)

    Saturday, February 3, 2007 6:46 AM
  • Saturday, February 3, 2007 4:33 PM
  • Thnx for the nice links...but why do you want us to stay away from Wrox and MSPress? I bought the Wrox Professional C#, it looked pretty good to me. I can't say for sure though, I haven't read other books for C#.

    My opinion about Wrox Professional C#, is that it pretty much covers most of what you need to know to programming in C# and programming .NET. It is particularly suitable for developers who have some experience in C++, as it skips the basics. It also goes pretty deep into every topic. Basically, it's good value for money.
    Friday, March 9, 2007 2:31 PM
  • Well I love the Idiot;s & Dummies Series. So I got:

    1) The Dummies Guide to C# (title could be off; try going to www.dummies.com and do a search for C# books).

    Plus I also got:

    1) Beginning C# Game Programming

     

    I got this because I also plan on making game with C#

    Friday, March 9, 2007 6:01 PM
  • Hi

     

    I am also Begginner to C# language

    For C# language for any version only for beginner "WROX  BEGINNING C# 2005/2008"

    is BEST

     

    Once for understanding study 15/20pages then u came to know is it ok for u or not

     

    bye

    Friday, August 29, 2008 6:02 AM
  •  

    I am an avid reader of programming books. Here is my top list:

     

    1. "Accelerated C#" by Trey Nash
    2. "Programming .NET Components" by Juval Lowy [Awesome]
    3. "C# 3.0 In a Nutshell"
    4. "Head First Design Patterns" [in Java but good]
    5. "CLR Via C#" by Jeffrey Richter
    6. "Code Complete"

    7. "Pro C# 2008 and the .NET 3.5 Platform"
    8. "Framework Design Guidelines"
    9. "WCF" by Juvy Lowy [Advanced stuff, but excellent]
    10. "Pro LINQ Language Integrated Query in C# 2008"

    11. Programming ADO.NET Core Reference (David Sceppa)

     

    I agree with Blair Allen Stark on what he he said "Stay away from Wrox". However, I like MSPress a lot.

    Friday, August 29, 2008 3:33 PM
  • There is now a new version of John Sharp's book titled "Microsoft® Visual C#® 2008 Step by Step".

    I presume it is an updated version of "Microsoft® Visual C#® 2005 Step by Step".

     

    Peter

     

    Friday, August 29, 2008 5:20 PM
  •  peterwt wrote:

    There is now a new version of John Sharp's book titled "Microsoft® Visual C#® 2008 Step by Step".

    I presume it is an updated version of "Microsoft® Visual C#® 2005 Step by Step".

     

    Peter

     


    I would not invest in that text.  If you are new to programming you need to learn basic programming concepts.  That book walks you through a few simple programs, and gets you "up and running" with the IDE.  But, it does little to teach you the actual language, or what programming actually is.

    I do not know new programmers every get their bootstraps off the ground with the available literature.  Invest in a couple of abstract books that use "pseudo code" in their examples.  There are many basic concepts that you need to wrap your head around that are language independent.

    The Microsoft Press books, like "C#, Language Reference" for example, are good but not complete.  That is why John Grove has such an extensive list.  There is no single reference that will get you up to speed.  

    Finally, the best learning experience will come from simple brain busting practice at coding.  When you a text you think you like that's loaded with code examples, try typing them in yourself instead of downloading or pasting in the code.

    Hope this helps.
    Friday, August 29, 2008 8:14 PM
  • i offer that for this case refer to this site: www.deitel.com
    Wednesday, June 27, 2012 12:02 AM