Eu trabalhei com Richfaces 3.3 e Primefaces 3.x e posso dizer honestamente que Richfaces é um lixo.
É extremamente problemático e coisas que deveriam ser tão simples no JSF simplesmente não funcionam corretamente no Richfaces e você tem que escrever alguma solução hacky ou perder dias tentando fazer algumas coisas funcionarem corretamente.
Quando comecei a usar o Primefaces foi quando realmente vi a luz no final do túnel JSF. Primefaces realmente torna o JSF agradável para escrever código.
Primefaces funciona muito bem e a documentação é muitíssimo melhor porque não inclui apenas a fonte do xhtml, mas também a fonte dos beans de apoio que, por alguma razão estúpida, os documentos richfaces não têm.
Não acredite apenas em primefaces> richfaces, basta olhar os fóruns de ambos e você notará que os fóruns de richfaces estão cheios de perguntas sem resposta de clientes muito insatisfeitos.
Uma coisa simples que eu gostaria de apontar com Richfaces 3.3 é que seu aplicativo simplesmente não funcionará no IE9 e superior sem adicionar uma metatag para colocar o IE de volta no modo IE8. Que tipo de besteira de compatibilidade é essa? Apenas mais uma razão pela qual Richfaces é uma merda.
Ok, parei de reclamar. Eu espero que você comece a foto. Se você está debatendo em qualquer um desses dois conjuntos de componentes, faça um favor a si mesmo e acredite em minha palavra de que o Primefaces é um produto muito melhor do que o Richfaces.
Ah, e se você encontrar algum blog sobre por que Richfaces é melhor do que Primefaces, por favor me avise para que eu possa postar exemplos e colocar alguém em seu lugar.