Citrix recently released XenServer 5.6 Feature Pack 1. XenServer keeps getting better as this is the best version yet. The free version is still very much the same but depending on the edition you purchase, you can get some pretty cool features such as:

Distributed Virtual Switching – Provides distributed, fine-grained networking configuration and control policies, which increase visibility into XenServer virtual networks. Support for the vSwitch has been added as a post-install option on XenServer hosts, as well as a Controller for administration of multiple vSwitches and cross-server internal networks.
Jumbo Frames are now supported for storage networks when the vSwitch is used.
VM Protection and Recovery – Configure scheduled snapshots and (optional) archive of virtual machines.
Web Self-Service – Provides browser-based access to selected virtual machines by delegated administrators.
HA Restart Priority – Configure HA policies to restart specific VM(s) first.
Snapshot improvements – Improved reclamation of space after VM snapshots are deleted, even if the VM is running.
• Enhanced guest OS support for Windows 7 SP1, Windows Server 2008 R2 SP1, and Suse Linux Enterprise Server (SLES) 11 SP1.
• Generic Red Hat Enterprise Linux (RHEL) 5.x support. RHEL / CentOS / Oracle Enterprise Linux versions 5.0 to 5.5 support with a generic .RHEL 5. template.
• Brocade HBA drivers and command-line tools are included in XenServer.
• Provisioning Services improvements to Windows volume license (MAK and KMS) support.
• XenDesktop platform enhancements. Provides local host caching of VM images to reduce storage TCO for XenDesktop VDI deployments.

I was hoping the distributed switch technology was going to be in the free version but no such luck. The features available in each version, taken from here, can be found below: