My vote goes with Pandora. I was using it previously on my PC and now use it on my phone. It uses intelligent software that allows you to rate songs in order to fine tune the selection of music on "channels."
Red BB Curve 8330m
v.4.5.138 (Platform 188.8.131.52)