Many new Linux users come from Windows and as a result have a desire to run their existing software, or at the very least the programs they’re used to, on their new Linux computer. So is this possible? Can you do this on Linux? Well the answer is a bit complicated…
As a general statement: Windows programs will not work on Linux without additional software to do some “translation”. This leaves you with three options:
Find an alternative. There are many alternative applications written specifically for Linux, or at the very least with with Linux in mind, that might accomplish the same task. For example while you may not be able to run Microsoft Office perfectly on Linux you can certainly use LibreOffice instead. Some applications, like Firefox, even work on all Operating Systems which makes moving between them very simple.
Translate it! As mentioned above Linux can’t simply run Windows programs because they don’t “speak the same language”. Luckily some awesome developers have created a translator to make that a reality. It’s called Wine (which stands for Wine Is Not an Emulator) and it allows you to run some, but not all, Windows programs on Linux. Even then when it does work it may not work perfectly as there are just so many differences between the two Operating Systems. So how do you know if your favourite program will function correctly? Just search their handy AppDb for your answer!
Maybe it’s a cross-platform .NET application? This one is a bit technical but some .exe programs are actually .NET programs. This means that you might just be able to be run them using either Mono (in the case of .NET Framework applications) or .NET Core.
Bonus: maybe it’s a web application? These days a lot of the “programs” we use are web based. Social media like Twitter and Facebook, online banking and more can all be access via Linux in your browser exactly the same way you’re used to doing it on Windows.
Hopefully this gives you an idea of how you can work around running some Windows programs on your new Linux desktop.