I have done this in a high-performance circumstance and achieved near-enough to native performance for the applications we were running. This isn't so much a 'here's how to do it', but two examples of where I have done this and achieved adequate performance and solved a problem.
For Data Science and Software Development
My current workstations (a laptop and my workstation), have Windows 10 and Ubuntu installed side-by-side on two separate partitions. Upon booting up my machine, I can select Windows or Ubuntu and boot into either operating system. Within Ubuntu, I use VirtualBox to boot the native Windows partition and run it like any other virtual machine (see here).
Everything works: drag and drop, shared clip-board, and file sharing. I run large, multi-threaded Excel spreadsheets constantly (don't shoot - I didn't build them!) in my virtual machine and everything is hunky dory.
For Geophysical, Geological and Engineering Works
A few years ago, I built a similar setup using CentOS and Windows 7. This was so that my colleagues could run expensive, performance-hungry geophysical simulations in Linux while still being able to access similarly performance-hungry 2D and 3D mapping software in Windows 7 (along with Outlook and the rest of the Microsoft suite). We trialled VirtualBox, but with money to spend, we ultimately solved the problem using VMware Workstation and GPU pass-through (the cost was trivial compared to salaries and software licensing). For our applications, we achieved close-enough to native performance in Windows and everybody was very happy with the setup.
These were quite meaty machines for their time (circa 2010): Quadro 4000, dual quad-core Xeons and 32 GB of memory. The most arduous part of assembling these setups (as far as I recall), was something to do with a hardware RAID controller. I maintained about a dozen machines using this setup and we never had a single issue throughout the lifetime of the project these machines were purchased for (~2 years). This was a fantastic result for us because if a single machine was down for say, a week, that would have cost us more in lost productivity than the workstation itself!
You can achieve very good performance using the dual boot option described above. I've done this using VirtualBox and VMware of different occasions, using a combination in Linux distributions (Mint, Ubuntu, and CentOS), and Windows versions (7, 10), and always achieved adequate performance for my needs.
The other advantage of this setup is that you can nuke either partition and leave Windows or Linux behind if a) your circumstances change, or b) this setup isn't adequate for your needs. If performance isn't cutting it, you also have the escape-hatch of simply booting directly into the operating system where you need that little bit more performance.
Finally, a note on licensing: If you boot Windows natively it will see different hardware and interrogate you about licenses. This is less of a problem with Windows 10, which will simply nag you as you get along with your work. I can't recall how we solved this for those geophysical workstations; I do recall we had a volume license and possibly some help from a Microsoft representative.
Epilogue: Remote X and VirtualGL
I've also set up workstations using VirtualGL and a GPU cluster for high-performance petroleum simulations. I've even done this in AWS, but I don't recommend it for a number of reasons: cost, performance and convenience.