What are the benefits of XServe hardware and Mac OS X Server?
Solution 1:
If you have a lot of mac infrastructure then running OS X Server on the back-end will allow you to do things with less friction. For example setting up Open Directory on the Mac server is a piece of cake, and your Mac clients will bind to it easily. If you are up for more pain, you certainly can run a different directory server and bind clients to it, but the integration will not be as good. (For example, it'll be more difficult use MCX to manage your clients.)
I'd say Open Directory is the biggest reason to use a Mac server. Using Podcast Producer, Quicktime Streaming, running WebObjects, having a Mac Software Update Server, serving files with AFP, NetBooting Mac clients, or running an Xgrid controller are all other reasons to use Mac OS X Server over an alternative.
It will run your normal services - DHCP, DNS, SMB, Firewall, HTTP, MySQL, etc -- and with a nice interface to boot, but I don't see a compelling reason to use it for that over a similar server that is virus resistant. [Mind you, Apple has made some mention of saying, "See, it is so easy, you don't need an IT department". While I tend to disagree, a technical user ought to be able to get basic services running, and there might be a place for that.]
You don't strictly need an XServe, heck OS X Server will run fine on a laptop, and we opted for some nice Mac Pros. The XServe's advantages are that it has some additional monitoring capabilities and fits in a rack.
Also, it is usual most cost effective to buy the base unit and upgrade RAM and drive space from another vendor.
Solution 2:
Over Windows - client licences - you pay once for OSX Server and it'll support as many users using whatever services you like all for that one price - no client licences.
Over Linux - ease of use, pretty much everything is setup via a GUI
It's not cheap and it's not a powerful/fast as other options but for a small multi-service (web/mail/db etc) office they're pretty easy to use.