LearnWhy You Should Learn C# and ASP.NET at Treehouse

James Churchill
writes on October 18, 2016

Share with your friends










Submit

You’ve made the decision to learn how to program. Or maybe you have the experience client-side languages like HTML, CSS, or JavaScript, and you want to learn a server-side language in order to broaden your knowledge. Either way, now you need to decide what to learn.

So why would you choose to learn C# or ASP.NET?

Breadth

C# has traditionally been used to develop web and desktop applications. In recent years, C# has made forays into cross-platform native mobile development using Xamarin, IoT (internet of things) development, and game development using Unity. You can even use C# to develop for the Universal Windows Platform (UWP), which allows you to create a single app that targets Windows desktops, tablets, phones, and Xbox One game consoles.

Learning C# will help prepare you to learn other languages. C# and Java (which is also used in a wide variety of situations, including Android development) are similar not only in their syntax, but share conceptual, architectural, and runtime similarities as well. C# and Swift (which is used to develop iOS apps) also share syntactic similarities (see Swift for C# Developers).

Relevance

Since it’s initial release in 2002, C# and the .NET Framework have evolved at a steady rate, gaining new features such as generics, language integrated query (LINQ) capabilities, and rich support for asynchronous programming. By adding new features to C#, Microsoft has kept the language feeling fresh and current, allowing it to keep up with the demands of modern software development.

In June 2016, Microsoft released v1.0 of .NET Core and ASP.NET Core, new open source (hosted on GitHub) and cross-platformm (Windows, Linux, and macOS) versions of .NET and ASP.NET. Being able to develop and deploy ASP.NET apps on the platform of your choice opens up new scenarios, including mixed environment development teams and deploying your applications onto Linux servers.

Tooling

Microsoft’s Visual Studio IDE (integrated development environment), provides developers with powerful tools for developing C# and ASP.NET apps. Visual Studio’s IntelliSense offers intelligent code completion that makes it easier and quicker for developers to write C# code. There’s even a free version available, Visual Studio Community, which gives all developers access to these great tools regardless of their situation.

Demand

C# and the .NET Framework are used by small to large businesses, all over the world. This has kept demand for C# and .NET developers at relatively consistent levels over the years (see the Indeed.com recent job trends data below). Learning C# is a great way to land a software development job in just about any market.

Indeed.com Job Trends: C# & ASP.NET

Job Postings data from Indeed.com

What Makes Treehouse Different

Now that you’ve decided to learn C# or ASP.NET, how do you go about doing that? If you’re new to programming, learning C# or ASP.NET can seem difficult or intimidating. At Treehouse, we understand what it’s like to be a beginner.

We offer two tracks: Learn C# and ASP.NET Web Development. Each track contains a curated progression of courses and workshops that will guide you through the learning process.

Our teaching team (more about us in just a bit) has carefully planned and crafted a gradual, step-by-step curriculum so that no prior programming experience is necessary for you to be successful. We take the necessary time to fully explain concepts while not making any assumptions about what you may or may not know. With this approach, you’re less likely to get frustrated. And if you do get stuck, we have a great community of students and moderators who can help you get back on track.

Video learning is reinforced with interactive quizzes and code challenges. Treehouse recognizes that active participation is a key part of successful learning, so we strive to make our courses as interactive as possible.

Active participation is a key part of successful learning, so we strive to make our courses as interactive as possible.

To get started with learning C# at Treehouse, you only need a web browser; no other software or tools are required! Our first three C# courses utilize Treehouse’s Workspaces, which allows you to create and manage projects and write code… all within a web browser. This allows you to focus on learning the C# language instead of hassling with installing and configuring software.

Workspaces: C# & ASP.NET

Editing C# code using Treehouse’s Workspaces

When possible, our courses are built around creating fun and engaging projects. For example, in our C# Basics course, as you learn the basics of the C# language, you’ll build a simple app called Fitness Frog that allows you to track your fitness activity. In a later course, ASP.NET MVC Forms, you’ll add forms to an MVC project in order to complete a web-based version of the Fitness Frog application.

Our Content

Treehouse’s growing C# and ASP.NET library contains almost 31 hours of content across 14 courses and workshops. Regardless of which track you choose, Learn C# or ASP.NET Web Development, you’ll start with Jeremy McLain’s C# Basics and C# Objects courses.

C# Basics starts at the very beginning and teaches you how to write and read to/from the console as you learn about variables, conditionals, loops, and exceptions. By the end of the course, you’ll have created a program called Fitness Frog that keeps a running total of how much exercise you’ve done.

C# Objects builds upon those skills by teaching you the core principles of object-oriented programming (OOP). You’ll learn about classes, objects, methods, properties, and fields as you create a tower defense game.

In the Learn C# track, you’ll complete Jeremy’s C# trilogy, by taking the C# Intermediate course. In this course, you’ll learn more essential principles of object-oriented programming as you improve the Tower Defense game from C# Objects.

In the ASP.NET Web Development track, you’ll follow the C# Objects course with the ASP.NET MVC Basics course, where I’ll teach you how to use MVC and Visual Studio to create a comic book gallery website. You’ll learn how to create a new project, add controllers and views, model data, and create repositories.

Then you’ll continue on to the ASP.NET MVC Forms course, where I’ll show you to create forms using MVC. You’ll learn about various field types and form validation as we build a web version of the Fitness Frog application from C# Basics.

Fitness Frog Web App: C# & ASP.NET

The Fitness Frog web app that you’ll add forms to in the ASP.NET MVC Forms course.

Beyond the foundational C# and ASP.NET courses, we have courses that’ll teach you how to query data using LINQ and how to read, write, and process data using streams. We also have a series of workshops that’ll introduce you to the Visual Studio IDE and show you more advanced features such as debugging, integrating with GitHub, and package management with NuGet.

Meet Our Teaching Team

Jeremy McLain and myself, James Churchill, are full-time teachers at Treehouse dedicated to creating the best C# and ASP.NET curriculum available anywhere.

Jeremy McLain: C# & ASP.NET

Jeremy McLain

Jeremy is a software engineer with 10 years of professional development experience across a wide variety of languages and platforms. He loves solving hard problems with the latest tools and technologies. Current interests include web mining, big data, data science, distributed systems, machine learning and natural language processing.

James Churchill: C# & ASP.NET

James Churchill

I am a developer with 16 years of professional experience working with a wide variety of client and server technologies. I’ve also managed and mentored other developers. I enjoy getting out into the community to speak about .NET and JavaScript development. In the past two years, I’ve presented over 25 talks in 8 cities.

Guest Teachers

From time to time, we also use guest teachers to create content for our library. Carling Kirk, Dean Davidson, and Justin Horner bring a wealth of experience and knowledge to our teaching team and have provided invaluable contributions to our C# and ASP.NET library.

What’s Next?

Treehouse’s C# and ASP.NET library will continue to grow!

In C# Collections, Jeremy will teach you how to use the various collection types provided by the .NET Framework to organize data so that it can be used efficiently. In Entity Framework Basics and Entity Framework Migrations (available in November and December respectively), I’ll teach you how to use Microsoft’s Entity Framework to manage your application’s data. And in Using Entity Framework with ASP.NET MVC (available in December), I’ll teach you how to use Entity Framework within the context of an ASP.NET MVC application.

You can see all of our available C# and ASP.NET content here and all of our announced unreleased content on our roadmap. You can give us feedback about future content on our Trello board.

Jeremy and I wish you good luck with learning C# and ASP.NET. Reach out to us on Twitter @Jeremy_McLain and @SmashDev and let us know how you’re doing. We’d also love to hear your feedback! Let us know what worked for you and what didn’t so that we can continue to improve our curriculum. Happy coding!

Leave a Reply

Learning to code can be fun!

Get started today with a free trial and discover why thousands of students are choosing Treehouse to learn about web development, design, and business.

Learn more