This is a response wrote for my Friend Mr Basil Nizam for his question on which OS he should use as an aspiring Software Developer Student.
Read the above article by Ajeet. Don't blindly gulp what he wrote there since many of them are baseless arguments, but there are a lot in the comment section. In total this will you few insights which would be helpful to form your decision on Windows and Linux based on the use-cases.
For me, MacOS (unix based) or Linux is more comfortable to do development than Windows due to the easiness of making custom configurations and automation scripts. All these things are possible in windows as well. But since the majority of the people in the developer-ecosystem is already using either MacOS or Linux, the no of mature solutions will definitely be less. In addition to that many technologies I work with still have unresolved or immature developer tools and support for Windows OS. Most importantly many of the companies (as far as I know) in the industry is using Linux / MacOS (very less) for developer machines as it is less costlier (excluding MacOS). So, if you already have a good hand in Linux, it will help you while you starts your carrier.
Linux via WSL/Virtual (via VB or VMWare) or Live USB or Dual Boot and/or Primary OS?
WSL is really awesome and light-weight when compared to any other methods (except Live USB) and can go well with your existing Windows OS. But as it is running on a virtual environment, the performance will be not enough in certain resource heavy tasks. And some programs won't support WSL (eg. Mongo DB won't work in WSL).
LiveUSB in easy and safe (in terms of the probability for getting your Primary Windows installation gets corrupted). Even though lack of persistence is a problem, it could be fixed if you want. But the storage space in normal removable drives would be a real problem until you are buying a stick with plenty of space. But if you have such an extremely faster stick, you can literally install the os in that instead of making it a Live USB!
Dual Boot is cool but you might have to sacrifice the fast UEFI enabled booting of Windows. Also, if the chances of getting your primary windows corrupted is high if you're a person who is playing with system files without much care (i faced it lots of time couple of years back).
Linux as a Primary OS is a good option for learning it in depth. Human will be adopted to new circumstances if they don't have any better alternatives (heavily subjective based on the user preference, I don't meant Windows is a better alternative for Linux and vice versa ;-P). Also, you can save a lot of time in dual-boot switcher and can make the entire storage space available for Linux.
I don't have any one word answer, instead was just trying to articulate a bit on certain parameters and aspects which might help you to take a final decision at your comfort.