User475983607 posted
Usually the decision to upgrade is based on wanting to integrate new features in later .NET versions to your application. Upgrading for the sake of upgrading is not a good reason to upgrade the framework, IMHO. You can certainly upgrade Visual
Studio and I believe going from 2012 to 2017 is pretty simple and you can just upgrade without really needing to do anything special.
Microsoft keeps "What new" docs so developers are aware of new features.
https://docs.microsoft.com/en-us/dotnet/framework/whats-new/
Also .NET API get deprecated as time goes on. You'll want to see if you using any deprecated APIs.
https://blogs.msdn.microsoft.com/dotnet/2015/12/09/support-ending-for-the-net-framework-4-4-5-and-4-5-1/
https://docs.microsoft.com/en-us/dotnet/framework/whats-new/whats-obsolete
Basically, you'll need to do a bit of research and figure out the best direction. There are no step-by-step guides as every application is unique.