There are a lot of "what ifs ..." that go along with running a program that is written and compiled solely for one OS. Whether that OS is Windows, Mac, Linux, BSD, etc. If the owner of the technology is unwilling to port to another OS, then you are at the mercy of what the owner is willing to do. If someone is unwilling to reverse engineer (technically illegal), or to write a functionally equivalent program from the ground up (can be difficult), then again you are stuck.
So your choices in some niche functions are often either keep a separate computer just to run that niche program, or to run that program in a virtual machine using a guest OS on a computer running a different host OS, or you can dual boot on a single computer that boots into one or the other of two OSes but never the two simultaneously, as needed.
Having two completely separate computers, can be expensive. Having an OS running as a guest on another OS via some virtualization application requires a computer with higher specs (RAM, CPU some storage), that too can be expensive. Dual booting only allows you to run one OS at a time, but only has larger storage requirements to accommodate both OSes, their each unique apps, and their each unique data.
Again, it's related to the old problem of bigger, faster, cheaper - pick two. And is a decision only you can make.