Click here to Skip to main content
15,868,159 members
Articles / Web Development / ASP.NET

But How Do I Learn ASP.NET?

Rate me:
Please Sign up or sign in to vote.
4.80/5 (15 votes)
10 Feb 2014CPOL9 min read 100.7K   28   4
How to learn ASP.NET

“How do I learn ASP.NET?” or “What is the best way to learn ASP.NET?” are two questions that I am frequently asked on a nearly daily basis. These questions are fairly subjective and as everyone should know, there is never any “best” way to learn, but I thought I would share some of my thoughts on the topic and provide some resources for those looking to delve into the .NET world.

how-do-i-learn-dotnet

Languages

Since you need to actually know a language (at least one for humans and one for computers) before you begin your journey, it’s probably important to have an idea of what your choices are. There are primarily three main languages that you’ll encounter most often in the .NET world, so I’ll provide a few resources for each of the major ones to help you on your way:

  • F#

    One of the rarest of the major .NET languages is F# and this is probably due to the fact that it is a functional language (although it can encompass object-oriented and imperative concepts as well) and it the youngest of the .NET languages. It began to gain more traction in recent years however it would receive a bronze medal if a popularity contest was held between the three languages listed here. But if you are feeling adventurous or come from a functional programming background, it is worth checking out.

    Resources to Learn F#

You’ll also need an actual development environment to run these in. Thankfully, Microsoft offers a free “Express” version of Visual Studio (its flagship IDE) completely free for personal and commercial usage, which you can download from the link provided below :

Books

Books typically aren’t the first thing to come to mind when searching for resources on learning a technology, but people wouldn’t write them if they didn’t work. For you page-turners out there that learn best by being away from a screen and keyboard, I’ll provide a few highly recommended options that should give you a jump start into the .NET world :

  • Beginning ASP.NET 4.5: in C# and Visual Basic (Beginner Friendly)

    This tutorial-centric book provides a great introduction to ASP.NET and is a perfect book for both developers that are new to .NET or those that may have worked with it previously as a refresher. The author does an excellent job of not only providing code to the reader, but thoroughly explaining why the code is there and how it works. (This is also a great choice as it provides both routes in C# and Visual Basic for those that are familiar with either of the languages.)

  • Professional ASP.NET 4.5 in C# and VB (Beginner Friendly)

    Don’t let the “Professional” in the title scare you away if you are just learning ASP.NET, as this title is a great choice for an introductory book to .NET or for those that have some experience under their belts. The superstar team of authors focuses on many of the foundational concepts throughout ASP.NET and covers all of the major features available within the technology so that the reader will feel confident tackling applications both big and small.

  • Beginning ASP.NET Web Pages with WebMatrix (Beginner Friendly)

    This book is undoubtedly the best one that I have come across on ASP.NET’s Web Pages technology that uses the WebMatrix platform, which is excellent for those just getting started in .NET. This book is extremely comprehensive as well and covers not only ASP.NET specifics, but many of the tangent web development technologies like HTML, CSS, JavaScript, AJAX and basically everything you would need to develop complete and dynamic web sites.

  • Pro ASP.NET MVC 4 (Some ASP.NET knowledge recommended)

    Adam Freeman (and Steven Sanderson) provide an excellent introduction to ASP.NET MVC and hold your hand as your create your first MVC application and then things begin to rev up a bit in a title that covers MVC in a very comprehensive way. The book not only does a superb job of explaining how MVC applications operate and how to handle just about every situation that might arise when developing an MVC app.

  • Professional ASP.NET MVC 4 (Some ASP.NET knowledge recommended)

    Written by a team of rock-stars in the .NET world, Professional ASP.NET MVC 4 is a great primer to get started with ASP.NET MVC after you have a bit of foundational work under your belt. Much like the previous title, this work covers MVC in its entirety and goes into a bit greater depth about topics that are close tangents to MVC such as jQuery, AJAX calls, dependency injection and more.

As you can see, the MVC-specific books by nature are going to have a slightly larger learning curve than a traditional “Web Forms” approach. If you are a quick learner and already have some web development experience, then you should feel right at home jumping into them, but if you are looking for titles to hold your hand and explain ASP.NET in its entirety, then you may be better off with one of the “Beginner Friendly” books above.

Resources and Tutorials

For some, reading can be one of the best ways to absorb the concepts when learning a new technology, however I have found that developers tend to learn best when they actually can sit in front of a keyboard and “develop”. I’ve always thought that the best way to learn to become better at something is to do that very thing and software development is not exempt from this rule.

I’ve compiled a list of different resources and tutorial series that I would recommend anyone that is looking to learn or become more proficient in ASP.NET to consider below :

  • Getting Started with ASP.NET

    If I only had one resource to name on this entire post, this would be it.

    Coincidentally, the first resource on the list just so happens to be one that shares the name with the technology itself (ASP.NET) so you can probably bet that it is going to be a pretty reliable place to visit. The Getting Started area of the ASP.NET site has everything a developer of any level would need to further their knowledge: tutorials, video series, walk-throughs, examples, discussions and more. All of the content was written and developed by leading members of the .NET community or actual members of the .NET development team and the quality shows.

  • Microsoft Events and Hands-On Labs

    An often overlooked resources for those looking to get some “hands-on” experience (even though they are through videos) is Microsoft’s Events site. It features full-length lab sessions and webcasts that cover a variety of topics for developers of all experience levels, which is great for those that prefer a more structured, instructor-led learning environment. There are 500+ different events listed under ASP.NET and the events can be accessed either on-demand or you can even participate in a live lab in progress (assuming you schedule to attend it) via web cast.

  • Channel 9

    Channel 9 is Microsoft’s video archive of all things development and it contains thousands of videos that cover just about every aspect of Microsoft development and technology. You can find video tutorials, explanations and overviews on ASP.NET and any of its underlying sub-categories (Web Forms, MVC, WebMatrix, Web API, SignalR, SPA and more) all in an extremely easy to use and follow format that allows the viewer to easily “skip to the good parts”.

  • Microsoft’s Beginners Development Center

    Microsoft’s Beginners Development Center is another excellent resource that not only provides a series of tutorials for ASP.NET, but it also features a crash-course on Web Development in general including an introduction to HTML, Javascript, CSS and more. If you continue to explore around the site, you’ll see that it isn’t restricted to any particular area of development and has content for web applications, desktop applications, web services and more.

Any of the above resources would be excellent areas to focus your learning and I would recommend scouring through each of them, as you would be surprised how the teaching styles of different instructors might help you learn or understand something more effectively. I will mention it again however – if you want the most comprehensive place to look for learning ASP.NET, then visit ASP.NET :)

Supplementary Learning

While tutorials and books are excellent resources, there are a few other resources that I would recommend (if you are interested) that cover not only ASP.NET but development in general and would likely be worth checking out :

  • PluralSight

    If you are a developer and you like instructor-led training through well-designed courses, taught by people that know what they are talking about, then you need to seriously consider investing in a PluralSight subscription. PluralSight is the premier developer training site not only for learning about .NET or Microsoft-related technologies in general, but ANYTHING development related. The courses cover a wide-range of categories and range from “FizzBuzz” and “Hello World” level to designing scalable enterprise-level system architecture.

  • Code Academy

    Code Academy is a great resource to learn many of the supplementary skills and technologies that are associated with ASP.NET such as Javascript, HTML, CSS, jQuery and more. These may play a bit less of a factor when you are first getting started (especially if you are working with Web Forms) but as you migrate to more advanced applications and want a bit more control over how things look, these are valuable skills to pick up.

  • DotNetFiddle

    DotNetFiddle is a great tool to tinker with basic .NET Applications from the comfort of your browser. It supports all of the languages listed above (C#, F# and Visual Basic) and has support for easily integrating NuGet packages into your applications as well.

Filed under: CodeProject, Development

Image 3 Image 4 Image 5 Image 6 Image 7 Image 8 Image 9 Image 10

License

This article, along with any associated source code and files, is licensed under The Code Project Open License (CPOL)


Written By
Software Developer (Senior)
United States United States
An experienced Software Developer and Graphic Designer with an extensive knowledge of object-oriented programming, software architecture, design methodologies and database design principles. Specializing in Microsoft Technologies and focused on leveraging a strong technical background and a creative skill-set to create meaningful and successful applications.

Well versed in all aspects of the software development life-cycle and passionate about embracing emerging development technologies and standards, building intuitive interfaces and providing clean, maintainable solutions for even the most complex of problems.

Comments and Discussions

 
GeneralMy vote of 5 Pin
George Tourtsinakis5-Aug-15 0:41
George Tourtsinakis5-Aug-15 0:41 
QuestionOK Pin
satyan1231-Feb-15 0:29
satyan1231-Feb-15 0:29 
GeneralMy vote of 5 Pin
Thomas ktg12-Feb-14 19:04
Thomas ktg12-Feb-14 19:04 
Easy to start learning
QuestionMy Vote is4.75! Pin
AminMhmdi11-Feb-14 3:48
professionalAminMhmdi11-Feb-14 3:48 

General General    News News    Suggestion Suggestion    Question Question    Bug Bug    Answer Answer    Joke Joke    Praise Praise    Rant Rant    Admin Admin   

Use Ctrl+Left/Right to switch messages, Ctrl+Up/Down to switch threads, Ctrl+Shift+Left/Right to switch pages.