Isso depende totalmente do que você está fazendo com seus usuários. 20 VMs vai ser difícil no servidor. Muita memória, muito uso de disco, muito uso de rede ... Eu não tentaria fazer isso.
Serviços de terminal são algo que costumamos usar. Poderíamos suportar em hardware decente cerca de 15 a 20 sessões de cada vez. Problemas ... a multimídia era uma porcaria, o Office precisa de uma atenção especial ao instalar em serviços de terminal, e certos aplicativos podem sobrecarregar o processador para que um usuário possa roubar o servidor e aborrecer todo mundo. Isso pode ser mitigado por meio do provisionamento de recursos, mas ainda assim é uma preocupação de gerenciamento.
Também tivemos casos que eram irritantes de rastrear ... tínhamos um usuário que deixava um navegador da Web aberto para um loop de mapa meteorológico, animado. Houve algum vazamento de memória em que essa sessão foi BALLOONED até o servidor começar a debulhar. Os usuários estavam desconectando e se reconectando, as sessões foram abandonadas com aplicativos em execução, piorando a situação.
Ao mudar para uma solução de thin client, você precisa ter alguma maneira de aumentar a disponibilidade. Tínhamos sistemas configurados com clustering de IP do Windows, mas isso ainda tinha problemas. E as pessoas corrompem os perfis porque não entendem que estão usando um sistema REMOTE. Desligar o computador não foi reiniciá-lo. Vários logins em servidores diferentes não ajudaram com isso. E pior, nós tivemos um servidor que começou a reiniciar sem rima ou razão. Acabou que alguém estava tentando executar um aplicativo intensivo que acionava um, mas no Windows, que por sua vez reiniciava o sistema e inicializava uma dúzia de usuários.
Você precisa descobrir se os aplicativos serão compatíveis com esse modelo de uso. Os serviços de terminal podem fazer algumas coisas estranhas. Os executáveis feitos pelo diretor (um monte de shovelware vem assim para as escolas) funcionavam como o melaço nos nossos terminais. O software de nicho especial não gostava de serviços de terminal às vezes.
Para recursos, você deve definitivamente ir aos serviços de terminal. Acho que 20 VMs são difíceis, a menos que você tenha vários servidores e tenha o vmotion / vsphere / etc. Além disso, você estará essencialmente remodelando seu ambiente para ter uma espécie de nuvem na empresa. Eu não vejo os benefícios de fazer isso apenas tendo desktops locais, já que você está essencialmente replicando seus desktops de usuários em poucos servidores grandes, menos os benefícios de ter hardware local para isolar problemas e se dar um ponto central de falha. Para ter uma solução de VM realmente eficaz, você precisa investir bastante na infraestrutura para que seus usuários tenham confiabilidade e disponibilidade suficientes para realizar seu trabalho.
Os serviços de terminal também não são uma panaceia e você realmente precisa testar seus aplicativos para ver se terá um benefício. Além disso, lembre-se de que isso realmente impulsionará mais sua rede.
Os serviços de terminal podem ter melhorado desde que os usamos há muitos anos. Mas se isso lhe disser alguma coisa, agora usamos máquinas de desktop comuns para nossos usuários e usamos Deep Freeze para mantê-las intactas e livres de malware, especialmente depois de ter que continuar fazendo "exceções" para software especial até ser inútil ter servidores de terminal como as pessoas estavam cada vez mais precisando de exceções especiais.