Given the history of issues I had with both Windows and (to a lesser extent) Ubuntu, I would recommend that (if you have the CPU power), you run a barebone Linux setup with something like VMware server, on top of which you would thenrun both Ubuntu and Windows in Parallel. Perhaps one drawback of such solution is that Windows will eat a lot of resources for your VM, and may so require beefed up memory and CPU. However, if it cashes, it will not take youe entire system down.
If the bare-bone server with two VMs is not an option, I would then recommend Ubuntu as the base OS and Windows as guest OS. Since Windows is more likely to crash than Ubuntu, you will have lesser chances to have to restart BOTH OSes if one of them fails.