#1: Understand that .NET framework is evolving
You need to understand that .NET framework is no longer a giant monolithic framework. It has evolved over the years with.Net Framework 4.6 as the next logical iteration of the whole .NET Framework. It has been out since 2016 and preserves the whole API canvas of all your apps and technologies whether they are on the web, desktop, or mobile. So, all your apps and technologies that depend on the .NET Framework run fine in .NET Framework 4.6 as well. ASP.NET 4.6 includes WebForms 4.6 and runs on .NET Framework 4.6.
Another cross-platform, lean, modular, open sourced, new kid on the block that is optimized for specific applications is .NET Core 1.0. So, now you can take your .NET Core 1.0 apps to other platforms, like Linux and OSX, easily! ASP.NET Core 1.0 is the new beginning of ASP.NET that runs on .NET Core 1.0 provides you with the same benefits— cross-platform portability, leaner stack, open source, and modular components.
#2: Get updated with the tooling improvements in ASP.NET Core 1.0
You need to stay updated with the numerous tooling improvements brought by ASP.NET Core 1.0. Integration with Roslyn and on-the-fly compilation has made the Visual Studio development experience much better. New Command-line tools allow you to scaffold, build, and deploy ASP.NET apps from the terminal prompt itself. And all this works in a similar manner for all platforms —Windows, Linux, or OSX. Moreover, with the help of OmniSharp and lightweight code editors like VS Code you can now write the .NET code leaving behind the comfort that Intellisense provided with Visual Studio.
WebForms 4.6 has additional features like HTTP2 support and Roslyn integration and are still based on the .NET Framework with complete API access. In the new ASP.NET Core MVC 1.0, there is a new rendering paradigm with TagHelpers and Dependency Injection everywhere and a merger of MVC and Web API runtimes. A routing overhaul, new means to configure dependencies, and an overall leaner footprint for modern web apps, are also the additional features of the new MVC.
#3: Always upgrade MVC project routes
Since the underlying frameworks have changed the big time, you cannot expect magic tools for upgrading any MVC project you have. Though a lot of code can be reused while moving to ASP.NET Core MVC 1.0. in fact, you should ideally start a new project and bring over assets from your older projects slowly. Look out for changes in the way of configuring, choose your runtime thoughtfully, and clear any namespaces/APIs that are not offered by ASP.NET Core 1.0.
#4: Consider using a Core JS Framework in ASP.NET stack
Core JS framework allows you to reuse established frameworks and make the client-side code flexible. Core JS framework tools work right inside the Visual Studio and allow you to bind data easily, separate concerns, and oil the rendering engines well. Some popular Core JS frameworks that can be recommended include Angular, Aurelia, Backbone, Durandal, Knockout, React, etc.
#5: Opt for a UI focused JS Framework
The latest popular JS Frameworks provide you with polished UI controls, cross-browser compatibility, and device responsiveness. So, you no longer need to re-invent your UI widgets. A few examples are Bootstrap, jQuery, and Kendo UI.
#6: Choose your package manager wisely
The choice of package manager you make is very important due to the ever-increasing number of project dependencies. NuGet provides you with most of the .NET and server-side external libraries. Bower and NPM allow you to use any available client-side libraries from inside Visual Studio and manage versions of each dependency.