If you want to play Windows games or run Windows software, you need a legal copy of Windows, it's as simple as that.
Everyone has to decide whether or not he/she still needs Windows in this day and age.
There are a few things about this:
- Windows does not only cost money for the license, it's also a pretty expensive operating system to run, because of a few things:
a. Windows is only compatible with legacy Microsoft filesystems. These are pretty old and have known no evolution whatsoever in the last 20 years. That leads to a number of problems, together with the next point:
b. Windows has the habit of writing a lot of zeroes in files. People that use Windows in a modern way, in a virtual container, know everything about that. A few years ago, until Qemu-img and similar applications found out a way to clean up those zeroes in overlay files, you actually had to download an application from the Microsoft KnowledgeBase called sdelete to first delete all those Gigabytes of zeroes before you could make a snapshot of a Windows system in a way that's reasonably economic for enterprises. Most modern virtual imaging tools now create overlay files without the zeros to bring the size of Windows down.
ad a+b: the consequences of having an old crappy filesystem and this zero writing mania of Windows, causes a Windows system to be very expensive: SSD's are the most important performance part of any modern PC. The fact that Windows writes a lot more volume (writing a zero is still a write cycle for flash memory, and flesh memory only lasts so many write cycles) because it has zeroes in all files, makes SSDs very expensive in Windows in comparison to other operating systems, because Windows uses more useless write cycles just because of the zeroes it always writes. Add to that the fact that the Microsoft filesystems are inherently lower performing, and that they fragment data like crazy, which means defragmenting, which means more loss of time and write cycles, and suddely, SSD storage becomes hugely more expensive because of drastically reduced life time of the SSDs and because of drastically reduced SSD performance. On top of that, even with modern HDDs, Windows is expensive, at it has no native caching system, uses more RAM so that less RAM is available for RAM caching, has no native SSD caching system, and uses (as aforementioned) more SSD space so less SSD space is available for manufacturer based proprietary SSD->HDD caching applications, and Windows can also not format GPT drives at normal specs, because the filesystem won't support drives over 2 TB, so you have to split those drives up, which means that on every drive, you have to create a slow and a fast partition, which again reduces the benefit from the hardware.
- Windows does also cost extra money on malware control. It's nuts to spend money on Windows software to control malware because free software does exactly the same crappy job at it, but still, malware control, how inefficient it may be without an external solution (the only good solution being to use a linux distro with clamav to scan Windows externally), it takes time and eats system performance.
- Windows is also known for the BSOD and other recurring problems, driver issues, application crashes, data loss incidents, etc... this also costs time and maybe more than just time...
- Windows only runs Windows software. While this may seem logical, most modern operating systems are not limited only to native software. Linux runs Windows software, OSX runs Windows software, BSD, Linux and OSX run each other's software pretty easily.
- Windows has no repositories. This is probably one of the biggest problems of Windows. Everyone is used to installing whatever on Windows, and Windows has no real security system to prevent the installation of whatever software on the system. Most more modern operating systems (Android, iOS, OSX, BSD, GNU/Linux distros, etc...) use official software repositories and have strict packaging rules. That means that not only there is a lot more software available than for Windows (and it's free most of the time), but also that it's tested for particular operating systems, and that there is a name on the software of the person that vouches for the security of the software and the quality of the packaging.
- Windows is not the most user friendly operating system. It's pretty fragmented and all over the place in terms of user interface, and it requires a lot of different approaches for different tasks, and a lot of eye movements and mouse clicks. Many people have gotten used to the Windows interface over the years, to the point of being brainwashed into finding the Windows clickfest intuitive, but those people that haven't - like myself for instance, I've used linux since 1996 as main OS, or like long-time MacOS/OSX users - find Windows to be very stressful and inefficient. Part of this is also due to how old Windows is, the user interface started out at a time when multitasking was not a thing on PC's, and where the PC functionality was much more limited. For *nix-type operating systems, multitasking was always a main principle and requirement. That has lead to a completely different implementation of the GUI: in Windows, you always have to click your way back to a central starting point, whether that is a launcher menu or a screen full of launcher icons, and you have to launch an application to get to another menu, from which you can launch another applications, etc... until you get where you want to be, whereas in *nix operating systems, everything is much more decentralized and universal, you can get to anywhere from anywhere using any method or route, and the division between system access and userspace access is divided by a strict permission system only, whereas everything is pretty much userspace in Windows, and the division between system access and user application access is determined only by a separate launcher or a different popup window to click away when clicking a certain icon in a certain launcher. The inefficiency of the Windows interface also costs time and thus money, and also causes extra system overhead, which leads to reduced system performance. This is most certainly also a factor.
A lot of these extra cost issues can be partially solved through virtualization, basically, using a more modern open source operating system (or closed source, because there is also VMWare ESX for instance, which is not open source and it's a "type 1" hypervisor, which means that it's de facto an operating system, and VMWare ESX is pretty popular in enterprises because they were the first to have an allround functional virtualization solution, even though better and faster solutions have come out since then, that are also open source, like Xen and kvm/qemu. VMWare ESX is also known to have Windows-like system crashes, but they are not called BSOD, they are called PSOD, which stands for purple screen of death).
When using Windows in a virtual container, you can use the more productive *nix host environment to do most tasks, and only use the Windows guest for the specific Windows applications, for instance the game you want to run, or the Adobe application you want to run. That dramatically increases the efficiency of Windows, because it doesn't have to do much multitasking, the Windows install in the virtual container can be stripped to the bare minimum, so that it can run the Windows application that it needs to run more efficiently and with less overhead.
When virtualizing Windows, the hypervisor reduces a lot of the operating costs of Windows, but not everything. An advantage is that you can run a Windows license on multiple machines, but only one at the time, because technically, the machine you run it on never changes, because it's virtualized hardware that is exactly the same on different hardware machines as long as you use the same hypervisor. This is not the way Microsoft sees it, but they have no choice but to like it. If they would go against the flexible use of Windows guests in open source operating systems, their own HyperV code would be kicked out of the linux kernel, and they wouldn't like that. HyperV is Microsoft's hypervisor, which is also closed source like ESX. It's also a "type 1" hypervisor, and it's the operating system the more modern Microsoft systems run on, for instance the XBox One. Using virtualization makes Windows installs also "portable", because they are nothing but a snapshot of a working Windows install. When something breaks in Windows, you just dump the virtual container and start up the working snapshot. Using paravirtualization also can seriously boost the performance of applications like games in Windows, because of the reduced overhead that comes with running Windows in a virtual container, whilst still giving Windows direct access to crucial hardware, like a graphics card for instance.
Running Windows in a virtual container also means that Windows is just a file, in which the zeroes are removed for more efficiency and speed and less waste of write cycles and storage space.
It also means that Windows can't access the internet directly, or phone home directly, or do updates behind the user's back directly, as it runs from behind the netfilter of the host system, which is a *nix-system, that has much better and more modern security features, and can keep Windows in check.
So when running Windows in a virtual container, it's actually pretty usable, and the running costs are pretty contained.
Conclusion: the question is not whether you should get a FOSS operating system OR Windows, the real question is, do you need Windows besides your main FOSS operating system. And that question can only be answered by the use case scenario. Do you want to play Windows-only games or need to run Windows-only software, or do you have to run a piece of Windows-only software because of work or clients for instance, then you need a Windows license besides your main FOSS operating system, but if that's not your case, you're better off with just your FOSS operating system.