Take the 2-minute tour ×
Programmers Stack Exchange is a question and answer site for professional programmers interested in conceptual questions about software development. It's 100% free, no registration required.

I've got my BSc in Computer Science 4 years ago and I feel like I've forgotten everything I learnt. I still know the basics such as CPU, mohterboard, RAM, software, hardware, etc but I forgot how they work exactly. In general, I know what a programming language is and I have worked with Java when I was at Uni. To be honest I was just trying to solve the assignments in that time and now I've found I have some interest in programming and I chose C# because I can use it for web and for desktop applications.

Now, I want to learn C#. Is there any prerequisites for that? I mean do I need to come back to all the materials that I did study on my BSc? Or can I srart learning immediately?

share|improve this question

closed as not constructive by Walter, MainMa, gnat, Yannis Rizos Nov 6 '12 at 6:36

As it currently stands, this question is not a good fit for our Q&A format. We expect answers to be supported by facts, references, or expertise, but this question will likely solicit debate, arguments, polling, or extended discussion. If you feel that this question can be improved and possibly reopened, visit the help center for guidance.If this question can be reworded to fit the rules in the help center, please edit the question.

You can jump in immediately. You might want a book just so you can start learning parts of the .NET library. You can also browse simple question C#/.NET questions on SO –  acidzombie24 Oct 10 '11 at 17:47

6 Answers 6

up vote 6 down vote accepted

You could watch pluralsight video tutorials. There's free trial.
C# yellow book is free also.

You won't lose anything with those :)

share|improve this answer
You could lose quite a lot when learning from a bad source. (I have no idea about the quality of the sources you linked and I'm not commenting about that.) –  svick Oct 10 '11 at 18:24

You can certainly start learning C# immediately and go back to the material you learnt at university when you feel the need for it, for instance if you want to optimize an algorithm or craft a good data structure for your data.

share|improve this answer
"or craft a good data structure for your data" I'd read up on the full range of .NET data structures before you try to roll your own. –  StuperUser Oct 10 '11 at 16:38
@StuperUser his motivations are to learn, by re-using existing framework code he may be doing himself a disservice. I'd say rolling your own is a far better way to learn :) –  MattDavey Oct 11 '11 at 8:47

There are a plethora of books, tutorials, and cookbooks available for you to choose from to learn the basics. I would suggest you picked up and read CLR via C# by Ritcher as this will give you a much deeper understanding on C# from the metal up. It is not necessary a beginner text but it is worth a read.

share|improve this answer
No up or downvote because I haven't read the book, but just by the title, this seems like a horrible beginner choice... –  Domenic Oct 10 '11 at 15:27
Depends what you want in a text. If it is a tutorial, then yeah, not much use. IF you want to understand the language then it is a lot of use. –  Sardathrion Oct 10 '11 at 15:45
@Domenic, don't judge a book by its cover. –  Damian Leszczyński - Vash Oct 10 '11 at 15:57
Regardless of how much the OP forgot, we're talking about someone capable of getting a CS degree. The book isn't going to completely blow his mind. –  JeffO Oct 10 '11 at 16:48
CLR via C# is an amazing book and probably in the top 5 C# books ever. But it's probably not a great choice for someone who's new to the language. –  MattDavey Oct 11 '11 at 8:49

Yeah. I'd recommend Head First C#. Otherwise try some online tutorials; but the book I mentioned is excellent for learning.

share|improve this answer

Addison-Wesley Essential C# 4.0 by Mark Michaelis is one of the best books I have read. The author explains basics and then gradually increases complexity and takes the reader to more advanced topics. It has special topics for beginners and topics where the differences between C# and other languages (e.g. Java, PHP...) are explained.

This book will not only teach you C# but how to write good code.

share|improve this answer
I second that; Mark's book is great and it really does a good job of communicating the essentials. –  Eric Lippert Oct 10 '11 at 22:35

The degree and experience can't hurt... but it's a bit like going to NASA's astronaut school to learn to pilot a tricycle.

Just go learn it. It'll be tough, and it won't be the syntax or actual programming that will getcha. There are several APIs you have to learn inside and out to be able to make anything of it. Not to mention VS is a crappy IDE. But then, they all are. Just hang in there til you make progress. It'd be easier if you were learning this at a job, because likely your coworkers already have some highly relevant code examples, and good suggestions as to how to start.

And don't be scared to try to learn this stuff. I'd much rather learn a new language than have to try to pass Calc III and Diff Equations with a C.

share|improve this answer

Not the answer you're looking for? Browse other questions tagged or ask your own question.