The clustered NFS server is adequate, assuming you're a big fan of old school JBOD-style systems. Mind you, if that's the route you prefer, then Solaris or Nexenta are just fine, too.
As for "clustering various services" beyond just NFS, I have to say that my experiences plainly differ. While such things are "possible" in Windows - and, let's be blunt, they're a hell of a lot more friendly under Server 2012+ than anything that went before - Red Hat Cluster Service still walks all over Windows. (If you say "n lines of PowerShell", I shall strike you. Back into your box, marketdroid.)
Frankly, we enter a world of "needs assessment" here. What are you trying to achieve with the cluster? Are you simply trying to achieve a 2-node RAIN? Because if that's all you're after Windows Clustering is one of the least friendly ways to share files on the planet. It certainly doesn't come cheap. The minimum buy in is right up there with enterprise players...and I don't have to reboot them as often.
Are you trying to achieve namespace coherance? I trust Datacore's SanSymphony V a fuck of a lot more than lashing together Windows systems that get really cranky if the other nodes aren't identical in performance. Datacore's stuff can take storage from any number of different vendors, tier the storage, provide N+X RAIN across storage from multiple vendors, do sync or async WAN replication (latency dependent) and present the whole kit and caboodle as a single unified storage space.
Are you trying to create centralized storage for virtual machines? I would trust damned near anything more than Storage Spaces right now, and the JBODtastic storage-from-the-stone-tablet days preferred by Windows for it's clustering. Now, admittedly, there are some great enterprise storage clusters that are engineered from the ground up to take advantage of this by basically creating a two-node system-in-a-can (Supermicro's is a great example), but I'd still prefer a Tintri cluster, or a VMAX.
And what about the future? We're heading into scale-out storage, and scale-out isn't quite what Windows does. Oh, you can try to use Windows like a poor man's Datacore, pointing all the storage at your Windows instance and lashing it together with Storage Spaces, but you don't get half the functionality...and fewer big builds have been through that scale-out minefield than I'd like.
The future of VM storage is server SANs, full stop. File and Object storage will either be served by visualized file servers running on top of that, or - far more likely - by proper decentralized object stores like Caringo, with an NFS or CIFS shim.
Now, Caringo...there's the way to store a gazillion piddly files. If you need CIFS and NFS then it can do that...but all your next-gen apps can be properly coded to object storage and we can kick RAID to the curb. Thank $deity. Unlike other Object stores, Caringo doesn't have a single-point-of-failure name node, because it stores the metadata with the object. This allows for quick failover, recovery of partial drives, and the ability to set various classes of objects at different RAIN rates within the cluster. It seems to eat new nodes with a minimum of fuss and muss and retires old ones in the same manner.
So when I look at Windows Server I see a company that's doing yesterday adequately. But I can't say as I'd design tomorrow's datacenters on that technology. If it's all you know, it will get you where you need to go...for a price. A substantial price, and one that's only going to go upwards. Think "those who are still using Mainframes."
For the future, my VM storage will be server SANs, and my file/object storage will be HA NASes (low end) and Caringo-like object stores for the midmarket and above.
TL;DR It isn't that Windows can't do the job. It's that there are alternatives out there which are as reliable or more, as cheap or more, and which scale better with greater ease of use and less management overhead. I can use Windows, but I just don't have the time, money or patience to dick around with it any more*.
*At the low end, Windows is just To Damned Expensive. At the midsize, I just keep running up against it's limitations. 10M files brings the server to it's knees and cuts IOPS in half because NTFS is shit? Fuck. ReFS gets me to 40M files per volume. Woo. I'm dealing with a billion files with organizations that have 50 users and that's not going down.
And what about server SANs? They changed the game in a big way and Microsoft is *crickets* on the subject. I can't keep scaling classical bottlenecked centralized storage when I'm dealing with high-IOPS demand compute nodes whose capacity seems to grow asymmetrically of cost decreases to centralized storage.
Storage is evolving at break-neck pace, and there are great offerings out there now which have had massive deployments for 5 and even 10 years. We're not talking about greenhorn startups; the real changes are now enterprise ready. If I hitch my horse to the Microsoft wagon, I'm going to get left behind by all these kids in their newfangled horseless carriages.
Cloud first, mobile first, customer last. Microsoft's made it's development priorities clear, and they simply aren't aligned with those of us who want to run our own infrastructure.
If you plan to move your stuff into Azure, buy Microsoft's on-prem stuff. If you don't, they buy your infrastructure from quite literally anyone else. It's as simple as that.