Every cook praises his own broth and every developer praises his own OS. Every system has its advantages indeed and habit also plays a major role. Here we won’t say that Magento development is easier with one platform - we will just provide you with major differences in both these systems.
First of all, Magento itself strongly recommends to use Linux and its distributions, such as RedHat Enterprise Linux, Ubuntu, CentOS, Debian, etc. By “strongly recommends” we mean that it doesn’t promise you proper activity on Windows - it may work good, it may work bad, it may not work at all.
Another issue is “system gluttony”, or RAM requirements. Since Magento hosting is more optimized for Linux, it requires less memory for work. According to Magento DevDocs, it may need up to 2 GB of RAM, whereas for Windows server the same amount is a minimum requirement.
Affordability also a thing to consider when deciding between Windows and Linux. The question here is not so much in configurations difficulty as in costs. For example, Windows is the system that requires paying on almost every step of usage: pay for Windows VPS, pay for most of the software, pay for antivirus programs as Windows is less protected from malware. In such a way the Microsoft’s child appears to be quite a demanding choice.
On the other side, Linux is well-known as an open-source system with mostly free supporting software. The VPS is way cheaper as here a user pays not for the system itself, but for resources used at the hosting company. Antiviruses are also not an obligatory thing as most of the existed viruses are not meant to operate with Linux - savings again.
The result here is only one - if you have financial restrictions, Linux is better for you. Still, if you are not bound with any money limitations, you can make a decision based on other reasons.
Updates and community supports
Windows and Linux have completely different attitude towards updates. For example, from Microsoft it may come any time requiring reboot of the system. Not very convenient, isn’t it? On the other hand, Linux updates are fully controlled by users, so you are able to install it any time you want rarely requesting reloads of the whole server. There are servers run on Linux that have not been rebooted for years and everything works fine there.
Concerning community, the situation here is more or less the same. Though Windows’ community is wider due to its popularity among simple users, linuxoids will more likely advice you something more applicable to your situation. Still, it is not hard to find an expert on any of these systems and ask him a thing.
If considering out-of-box installation, Windows can boast more pre-defined tools for work, like Graphic User Interface and Remote Desktop. Linux in its turn consists only of the very basic tools, so if you want to have anything there - create it by your own. Or download it. So, if you want just install-and-use, Windows will be a suitable option.
However, one must pay for pre-installed functionality. Average requirements of Windows Server considering disc space may be up to 60GB or even more. In comparison with approximately 1GB of Linux, you will see how much space you must sacrifice for some additional tools. Due to this huge weight, Windows spends more time on the user’s tasks processing. In such a manner Linux appears to be a better choice if speed matters to you.
Regardless of Microsoft’s best efforts, Windows is still a very vulnerable system towards virus attacks. Even the best antivirus (and the most expensive one) can’t really grant you 100% protection from any malware attack as new viruses appear on the regular basis almost every week and it is not always possible to develop an update with protection improvements quickly. Even more, it is not convenient to constantly update your antivirus when necessary.
Linux servers don’t suffer from this problem at all. The point is that a lot of viruses just can’t work properly with Linux. For this purpose even an antivirus program is not required by this system - it is simply pointless. It implies not only money savings, but also a better work due to less system overload.
Rags about Windows collecting users’ data and then trying to make it more transparent is a well-known issue affecting both Windows VPS and OS for regular users. Though for now the scandal is over, we cannot be sure that it won’t happen again. Linux in its turn was never wound up in the issue of gathering personal data. No one really knows whether Microsoft continues collecting all the users data or not, so just take this question into consideration.
Tools for Windows and Linux
Whatever one may say, Linux is the system created, apart from anything else, for hosting. Such tools as PHP, Python, MySQL, Apache, ElasticSearch, Redis, etc. have been supported by the Linux developers community for decades, so its stable work is granted. Windows has only received optimized PHP under IIS, but other features are still way harder to use on it.
Of course, if you work with a particular Microsoft technology or just in a company that uses a specific network created for Windows, then it is better to use this system. Otherwise there is little sense in making Windows a copy of Linux by adding specific software that allows using these tools on Microsoft system. It will cost a coin and there will be little differences with its Linux analogues. Why to pay more, when there is no difference?
However, the choice between Windows and Linux will mostly influence your developer, who deals with the website. It depends on him: which OS and which soft exactly he uses for development.
The most of tools perfectly work for both Linux and Windows, like PHPStorm, Atom, a number of MySQL managers, and so on. Some of them are completely free, some of them require payment, but all of them compatible with both systems.
Still, some tools may cause difficulties in installation and configuration. For example, Heidi, a MySQL manager, will be complicated to install on Linux. It is possible to perform only with the help of Wine, a Windows emulator. All in all, the choice between Windows and Linux depends on personal preferences, as most of tools are possible to install on both OSs.
Despite all the given information, it is impossible to say that one system is better than the other. Yes, Linux indeed has its advantages, but if dealing with specific tasks, Windows will manage it way better and faster. Don’t also underestimate the power of developer’s habit. So, taking all the given information into consideration, you will be able to make a decision that will completely suit your needs.