All the other products I have used in the past OS2 servers, Novell Netware, Banyan Vines etc don't show up in the search list, which i guess goes to show that the best wins.
I've worked with several network device vendors in my 10+ years of being in the industry and my favorite continues to be Cisco IOS. Overall, Cisco IOS tends to be the most stable, the most intuitive, has the best TAC support, and has the best knowledge base articles and white papers.
Windows Server and Active Directory is very robust and stable, it has been a staple in every IT environment I have worked in during my career. Junior to Intermediate admins can learn Windows Server easily, the user interfaces make administration tasks very easy as well as the documentation available through a vast amount of resources. There are other Operating Systems available with no GUI which has a smaller attack surface, faster update installation and reboot time. Windows Server does have the ability to remove the desktop experience, however it is not something I have had experience with and I believe most administrators choose not to remove it.
By this point, there are several "flavors" of the Cisco IOS such as XE, XR, and the standard Cisco IOS. While they are all fairly similar, there does exist syntax differences between them. It would be ideal if at some point in the future, Cisco is able to unify all of them into one standard operating system which would use the same syntax across all platforms.
While overall Cisco does a great job of QA'ing their IOS, no matter the release, there's always some minor bugs. I think it's important that Cisco continue to pour resources into their QA team to test their software.
While I'm very familiar with the graphical readouts of "show processes cpu history" I would love for Cisco to eventually find a more intuitive way to display this data. I can't begin to count how many times I've had to teach more entry level (and even mid level) engineers how this graph is interpreted.
I do wish that Cisco had something similar to Juniper's "commit check" or "commit confirmed". This helps validate the changes you're about to apply, and catch errors, so that you have a better idea of the impact of the change.
Microsoft needs to minimize the update frequency by making the product more secure. It can become very exhausting trying to keep updated if you don't have a dedicated support team. It can become challenging where the business is unable to allow downtime for reboots as part of the update process.
Prone to security and audit vulnerabilities.
The operating system needs more CPU and memory resources compared to other options such as Linux.
Understanding the licensing model can be abit confusing.
Comes with a standard firewall, but not the most secured one available. Would suggest using a more secured firewall as part of your antivirus software.
Due to the number of vulnerabilities and the operating system being a target for hackers, anti-virus software is a must.
I've carefully reviewed the servers and services currently running on Windows Server 2012, and given the opportunity would renew them as is going forward. There are two systems I currently have in place, one is a very large Linux implementation for a large ecommerce site, and one is a very large backup solution front ended by FTP servers running Linux. Neither are well suited for Windows, but the overall network infrastructure is and will be Windows Server for the foreseeable future.
IOS is pretty intuitive as you can use the question marks to check for all the options or parameters for a specific command. Also having the tab key to complete the words is nice as you don't need type the complete command. Using also abbreviated commands with 2 or 3 letters instead of the whole Word makes it a great OS.
Anyone new to IT could easily use the familiar Desktop Experience (GUI) version because we all know how to use Windows, whether a client or server version. Once an IT user is more comfortable with the operating system, they can move on to the Core version, which is the way to go in almost all situations.
Microsoft's support is hugely wide-ranging from articles online to having to contact them directly for the more serious issues. In recent years when I have contacted them directly, I have found the support o be excellent as I have found myself connected to very knowledgeable people in the field in which I needed the support. The online support available is vast and I tend to find most of the time that there is always someone out there who has had the same issue as me in the past and knows something about how to resolve it! This is the advantage of using industry standard and long-established systems such as Windows Server.
Make sure that you have detailed processes in place for every server instance you plan to install/upgrade, if possible get the base OS loaded and Windows Updates applied ahead of time, and if using a VM take a snapshot prior to installing each role, as well as along the way.
Cisco has a better presence on corporate business so it makes it easier to find engineers and technitians to support your network. Also a lot of Universities and schools use it as a reference and use it to teach and prepare students so it will be easier to recruit people with cisco preparation.
They are different experiences, and while the other solutions offer enterprise-grade stability and, in some cases, address Windows server shortcomings (such as patching), they all do the trick, but the other solutions require a deeper technical background/configuration of items at the command line, which some people are not fully comfortable with.