I run a hosting environment for small business completely off a virtualized environment.  Provided you have a good idea of the workload of the applications, plus have a strong background in virtualization and storage design, RDS can be successfully deployed in a virtual environment. So far I find that using 2 vCPU's and 4GB of RAM with about 15-20 users is a nice sweet spot between utilzation and performance.  Some people recommend overloading on the vCPU's to try and get higher ratio's and on virtualization thats just the wrong approach.  If user density per box is the goal...go physical. Depending on your virtualization environment, data center licenses are usually the best option in a 40-50 server farm (6 sockets of datacenter will cost you about 18k...but 10 licenses of Enterprise (4 VM's per license) = about $28k...standard isn't worth it with virtualization as you cannot legally use DRS or HA effectivly as a box can only change hosts once every 90 days. As for VDI, it would be awesome for a Hosting environment IF Microsoft would pull their head out of their nether region and make it available for the SPLA.  The only workaround is to turn windows 2008 into a desktop and provide each client with a RDS Server for themselves...thankfully Windows 2008/Windows 7 are the same Core, so its pretty much the same thing...I just license it out as a Desktop with a TS and Windows Cal for licensing...
Common question that has been asked many times since the advent of OS virtualization.  Usually the anser is it depends.  Take some user environments: Apps are not able to run on 64 bit architecture and you want to increase per/host density.   In this case OS virtualization makes a strong case as you can carve out several 32 bit TS/RDS servers that have limited 32bit memory address space.  In this scenerio, a client can host multiple TS/RDS 32 bit servers and take advantage of the improvements in hardware.  Typically you will give up some overhead for the hypervisor (no matter what the vendor states.)  Assume this to be as high as 25%...even at that loss you still gain density.  take this example: 500 users that can run on 10 physical terminal servers at 50 users per host (assuming dual/quad or quad/dual core with 4gb ram.)   If you virtualize this environment you may find that on the same hardware with 16 gb ram you could now run 4 virtual 32bit terminal servers with 3 gb ram each and 2 virtual procs.  Assume each of these virtual servers can now only host 38 users.  Now your density per physical host is now 152 users.  Not a bad gain for adding a hypervisor and some memory....  Now take that same scenerio and assume the apps ARE 64 bit compatible...here is what could happen. Run the environment on the same hardware with 16gb ram.  Where you had 50 on the 32 bit server you now may b pushing 200ish.  (many factors contribute)  That is a bit better than the 152 on a hypervisor.  Could the argument be made that if you run 64bit terminal server on a hypervisor and get double the benefit.....
Should I virtualize my vWorkspace Terminal / Remote Desktop servers?