With my PC, I could dual boot, as it's just reassuring that I can fire up my favorite games and they "just work" on whatever the latest Windows OS is I'm running, and the convenience factor is so much higher now that I'm running WSL2 and can do various Linux things, too. But cost-wise, well I've only ever paid for Windows when buying a pre-made system. When building, I've gotten various free versions of Windows over the years, like when I did a "Windows party" for the launch of 7, and they sent me a free copy of Ultimate (which was free to upgrade to 8->8.1->10. But obviously not available in general if you want a Windows license.)
And the cost of time... to fiddle with Linux and try to get all my Blizzard games working, maybe it's not as bad as it is in my head, but it seems like a hassle, and quite often, my spouse and my family members and my friends and I spontaneously want to jump into a game of StarCraft 2 or Valheim or Diablo 3, and I don't want anything causing me to stop what I'm doing and try to troubleshoot it for 2 hours while everyone else plays.
So, I run only Windows, and I put up with the once or twice a year that a new update comes out and potentially introduces some kind of notification or extra Start Menu tile, and I turn that thing off, and then I go on with my life without it. If I could have Linux with a "Windows gaming" channel like Netflix that always just worked for every game I play or will play in the future, I think I'd certainly consider switching to that. But for now, I'm not confident enough that everything I use my PC for would "just work" if I switched, with the same performance and lack of troubleshooting, so I do not do so.
I have even worked on .net core projects with vs code and run SQL server in a docker container.
However, I forgot to mention - FreeRDP is a wonderful tool and it works perfectly for me. If and when I need to use a Windows only tool like SQL Server Profiler, it's easy to RDP over to a Windows machine to do that.
I know lots of people do everything on their one computer, but I just love keeping all the OSes separate so I don't have to deal with the possibility that some interoperability layer is actually causing me issues. And look what you can get for $299 that Linux will run perfectly on after you throw an SSD in there - https://www.amazon.com/HP-EliteDesk-800-Cerfified-Refurbishe... - and you can go even cheaper if you get an i5-4590 or i5-3470 instead. For a laptop, I have an old (2015) Acer Aspire E5 that runs Manjaro perfectly as well.
Here are the instructions to setup the dotnet host and runtime on an Arch based distro (Although, I just use the GUI add/remove software control panel in Manjaro called Pamac) - https://wiki.archlinux.org/index.php/.NET_Core