Both are cool. Richfaces is more developed and tested generally, since primefaces came out later than RF. Just have a look at the component showcase and choose the one you prefer.
Or even better, you can use both together, there are no compatibility problems.
The advantages is that you have a lot of components ready to use out-of-the-box.
The disadvantage is that sometimes you don't have full control about what a component can or can't do (but you can always create your own component extending a library component), and that you have to load some libraries into the client side for them to work (make sense, but it decreases performance)