5 Best Ways to Learn C#
Learning C# can be daunting, but today, I show five ways for you to become a master at C#.
Yet, you can't use all three without using a server-side language to serve the website to the client.
This is why you need to know C#.
C# is Microsoft's most-prized jewel. It was created in 2000 by Anders Hejlsberg and is comparable to a C++-type language and not a Java-type language.
But why learn C#?
In these 17 years (yikes!), it has become a cross-platform juggernaut language for almost every platform and technology available. It works on mobile native devices using Xamarin, it runs on Raspberry Pi and Arduino, and it's considered one of the major languages running a large number of websites on the entire Internet!
Once you master C#, the world, as they say, is your oyster. You can write C# code for any platform.
I've been writing C# since two years AFTER it was introduced and I've been amazed every year at how the language continues to grow even to this day.
So while it's always good to get back to basics, today, I share five of the best ways to learn C#.
What better place to learn C# than the authors of the language.
Microsoft always provide the most thorough and latest information on new updates to C# because, well...they created it. On the site, you'll see language updates (past, present, and future), code examples, and various discussions on the official C# forums.
If you are interested in learning even more, I would recommend Microsoft's Virtual Academy as well.
- Microsoft's C#
- Microsoft Virtual Academy (free) - C# Fundamentals for Beginners
- Microsoft Official Forums - C# Section
- Getting Started with C#
- C# Guide
- C# Programming Guide
2. Andrew Hinkle's C# Training Workshop
This C# workshop has gone through the paces in a corporate environment with people who knew other procedural languages and were gradually transitioned over to C#.
His workshop is available at no cost and is available on his GitHub repository.
If you have any questions regarding his workshop, send him feedback through his Twitter or LinkedIn account.
Readers of DanylkoWeb know I absolutely love PluralSight and the $30/month is well-worth the price of unlimited learning on the site.
PluralSight is a great learning platform and provides exceptional self-teaching videos by professionals for professionals.
The library is vast and has various topics. Recently, I just saw one on C# Tips and Traps (Part 1, Part 2).
The one course I would recommend for beginners is Scott Allen's C# Fundamentals with Visual Studio 2015.
It gives beginners a solid foundation of object-oriented development, assemblies, methods, classes and objects, and various other required topics.
- C# Fundamentals with Visual Studio 2015 By Scott Allen
- C# Tips and Traps, Part 1 - Jason Roberts
- C# Tips and Traps, Part 2 - Jason Roberts
Udemy is another grade-A learning website. It has a ton of courses for development, business and other topics...even cooking.
One of the best courses for learning C# is the Programming for Complete Beginners in C#. This course sells for $12, taught by Eric Wise, and teaches you in 6.5 hours.
WAY better than the "Learn xxx In 24 Hours/Days" books in my opinion.
- Programming for Complete Beginners in C# by Eric Wise
5. Best C# Books
I know this may be considered a cop-out, but I want to bring attention to specific authors who teach C# and need some kudos/credits for their books.
These authors below provide probably the best coverage I've seen captured in words. They've even built on previous versions of C# with 2nd and 3rd editions.
I would definitely recommend these four books to anyone wanting to learn C#.
- Beginning C# Object-Oriented Programming (APress) by Dan Clark
- A Programmer's Introduction to C# (APress) by Eric Gunnerson
- Programming C# 5.0: Building Windows 8, Web, and Desktop Applications for the .NET 4.5 Framework 1st Edition (O'Reilly) By Ian Griffiths
- C# 7.0 In a Nutshell: The Definitive Guide (O'Reilly) by Joseph Albahari and Ben Albahari
BONUS TIP: Real-Life Code Examples on .NET Application Architectures
For those new to .NET and want to dig into sample code immediately, Microsoft has a number of sample .NET Application Architectures where you can learn about real-world applications and how to build them.
There are six categories to explore and every category has sample code written in C# varying from Microservices and Docker to building Xamarin apps and writing ASP.NET MVC websites.
It's a treasure trove of real-world coding examples.
Next Steps: If you want to move past C# and want to learn ASP.NET MVC, I would recommend:
If you are just starting out to learn C#, don't get discouraged or frustrated. Programming in a new language takes time to get used to the syntax and the language's idiosyncrasies.
Ask others in forums if you are having troubles and be patient. Keep at it by being persistent and you'll be able to write code with the best of them.
How did you learn about C#? Did I miss a way on how to learn C#? Post your comments below and let's discuss.