Advertising notice: This C# Player’s Guide Review contains links to products that may result in compensation if a purchase is made. We try to not let our economic interests interfere with our reviews, but it’s important to have full disclosure about any potential conflicts of interest. In this specific case, the post contains Amazon links that can generate a commission regardless of which book you end up buying – or even if you buy something completely different and unrelated on Amazon.
The C# Player’s Guide by RB Whitaker
So you want to learn C# and Visual Studio? The C# Player’s Guide by RB Whitaker is often recommended as a resource for starting out, and for good reason. While there’s a lot this book won’t teach you to do, it will give you all the background you need to start understanding the language and terminology of C# software development in Visual Studio.
Technically, you can download Visual Studio, read the free documentation, and learn how to code in C# without ever spending a dollar. Realistically, most of us will need a little bit of assistance and guidance – at least at the beginning.
My perspective and experience as a developer
When I first picked up this this book a few years ago, I wasn’t too comfortable with coding. Sure, I had modified some scripts and tinkered with the PHP running WordPress to change a variable here or there, and I had a vague idea about some of the general principals of programming. I knew HTML and CSS pretty well, and I could set up a LAMP stack from scratch. I could even find specific lines in a database or modify them. But I’d never really written my own piece of fully functional software.
I had an idea for a piece of software I wanted to create, though. The intended user would need something familiar and intuitive to Windows users, and I liked the idea of having a visual editor for a Window-based program, so after some research, it became clear that C# would be an ideal language to write it in. As an added bonus, C# can be used as part of the .NET Framework to build websites, too. I figured this would be the quickest way to finish the software and I’d learn something that was at least tangential to my work building websites.
Long story short: not only did I learn enough about C# to build the software exactly as I had imagined, I also learned a lot more about HTML, CSS, PHP, and even the programming languages I haven’t used (yet). In hindsight, this book did a lot to improve my skills by giving me the language I needed to understand programmers who were trying to help me. It also helped me build my first fully functioning executable program, and that gave me a ton of confidence to try other, more complex development projects.
What The C# Player’s Guide teaches you about programming
If you’re already really confident in one or more object oriented programming language, The C# Player’s Guide might not be what you’re looking for. Readers with a strong software development background might find the first few chapters basic and redundant.
If you’re new to programming and/or self taught, these chapters might be the most important thing you read in your journey to becoming a programmer.
The C# Player’s Guide covers the following core concepts that will help you program in C# and in just about any language you can name:
- What is object oriented programming?
- What are objects and classes?
- What types of variables exist and how can they be used?
- How and where can I store data input and processed by the program?
- How do I conceptualize a program’s structure?
- How do I use Visual Studio?
- How do I assign functionality to forms and buttons?
Once the major background concepts are out of the way, the book does start to cover some basic syntax and terminology that can be used in the actual coding of a C# program. But by the time I got to that point, I was starting to understand all the other online tutorials, FAQs, and forum discussions a lot better than I ever had before. After a few evenings and a Saturday or two, my first C# program was ready – and I was ready to call myself a software developer.
What this book doesn’t teach you about C#
There’s a lot this book doesn’t cover, because there’s a lot you can do with C#. Most of what you’ll find here is background information about how coding and object oriented languages work, as well as information specific to C#’s behaviors and functionality.
You’ll be familiar with data processing, storage, and retrieval, as well as building form-based applications in Windows.
But there’s a ton of things that aren’t in here, from MIDI and audio control, to image and video processing, to advanced algorithms, and data analysis. Those are more intermediate to advanced topics – and each one could easily be its own book or two.
If you’re absolutely sure that you understand object oriented programming, variable behaviors, and general data structures, you might be able to skip this one and head straight to the W3 tutorial. You’ll get to the coding quicker, but you’re doing yourself a disservice if you’re skipping the fundamental concepts C# is built upon.
Is The C# Player’s Guide the right C# book for you?
If you’re where I was at the time, this is the book you need to read. It won’t make you an expert, but it will make you competent and able to hold a discussion with the developers in your IT department. You’ll learn a lot about how programming languages work at the most fundamental level, and you’ll be able to make basic Windows applications.
If you can already do all of that, you probably want something more specific.
Other Popular C# Books
Do you just need the intermediate and advanced syntax and use cases? Here you go. This book assumes some prior experience progamming in C#, but it can help take your existing skills to the next level by walking you through the design and implementation of more complex concepts. You’ll even learn to improve the performance and responsiveness of your programs through pointers, parallel programming, and advanced use of multiple threads.
If you’re looking for a more thorough approach to the bigger picture, this might be the book you’re looking for. This book explains the design goals, implementation, and history of C# as a language. This book is way more advanced than most of the others, and it focuses on things like changes between versions. This C# book is definitely for developers who are already proficient with an older version of the language.
Developing games is a major reason why people want to learn C#. Unity is a popular development platform that allows you to combine graphical and audio assets with C# scripts to create a video game. Although it is easy to use, it is also incredibly powerful and fully capable of creating popular games like Among Us, Cuphead, Fall Guys, and Angry Birds.
And of course, once you’ve started creating your own complex C# programs, you’ll need to focus more on things like performance, stability, security, and responsiveness. The Concurrency in C# Cookbook covers all these advanced topics and more. You’ll learn how to create modern websites as well as large, complex programs that aren’t too demanding on the CPU. Again, this is definitely not a book for absolute beginners, but rather something suggested for those who are already at an intermediate or advanced level in learning C#.
Free C# Learning Resources
As I mentioned earlier, you don’t even need money to learn C# or any programming language. Free resources are available all over the internet, so check out the following for an extra boost:
Regardless of how advanced your knowledge is or how you prefer to learn, there are a lot of options that can make you an effective C# developer! Whether you learn best from a C# book, or a small community, or an online tutorial, there are lots of options at prices ranging from free to minimal. Learning might even be a lot quicker than you ever imagined, so there’s no reason not to get started ASAP!