I normally ride solo. On occasion I ride with a friend, he likes to change up the pace. This is really apparent when we start riding in the hills. I'll truck it along at a pace that I know I can handle over and over again on each hill. Sometimes he will ride slow, others fast. Even if he takes off on me, I know I'll reel him back in shortly thereafter. That is what makes it fun. Random passing, sprinting and rest stops. He likes to take breaks more than I do, but it is nice to have a chat buddy.
When I am training, I ride solo so I can ride based on how I'm feeling (PEL). In large groups, sometimes it is nice to have the motivation to push harder than you normally would.
Cliff notes: Solo most of the time, occasionally a group ride or with a friend.