Comment Costs are variable (Score 1) 66
I moved from Windows to MacOS years ago (Windows Vista encouraged that!).
MacOS is easy to use, but there is a learning curve -- that is a cost. Macs tend to be more expensive than commodity hardware -- you can no longer run MacOS on commodity hardware (Apple made sure of that LOL). There is then the cost of support; Apple does have Enterprise plans and device management, but I am not familiar with the details (it is a cost).
MacOS has grown into a major OS, but Apple does apply its own rules--at times, they do f*ck things up -- for example, settings and preferences that get trashed after an update (ansible and config management might address some of that). That is a cost. Apple has taken the position of where they believe they know what's best for you, and some settings will continue to reflect that. That is a cost (perhaps more of nerves).
If you find a problem with the update/upgrade or some other matter, Apple Discussions is filled with Apple Apologists who will attack you. Or, Apple will delete your post if they find it too critical ("unhelpful") -- there are other venues, but it's a cost. I have had mixed results with Apple Support directly.
The software ecosystem for MacOS has grown significantly (good); there is also open source (also a cost, security/support/liability). Apple has their App Store, other vendors do their own thing.
There are other costs with any hardware platform (antivirus, security policies, updates/licenses), anti-theft/insurance, that need to be considered.
25,000 student is no small project and you have to factor in the time that such a migration would take, considering the above "costs" but also the unknown.
Microsoft has positioned itself well for the corporate environment, especially with Active Directory. The recent direction that they've taken is unfortunate, through poor management and sh*tty leadership, I wonder what their future will look like if something doesn't radically change.
I am hopeful that the Linux ecosystem will continue to improve.