A lot of the skills required are like any other platform or language (conditions, decision making, etc), but with .NET you have a few additional options that will require separate skills: This is just a very short list of possibilities: Language: Object oriented C# or VB.NET, or functional F# Platform: Web/ASP.NET ), IoT , Desktop In my experience, as someone who works mostly with C# with ASP.NET the skills that came in handy for me were: Understanding generics How object oriented programming applies to .NET Making good use of implicit variables General understanding of the ASP.NET web page lifecycle How to work with data in a .NET application (preventing sql injection with parameters, when a stored procedure would be better than building the query or statement, how to map application objects to data)