I am a truck driver, so I'm sure I'm biased. But, I think both have their place. There's already been a lot of talk about HAM, and I will leave that to those who know more than I.
CBs don't have to be expensive. The Uniden Pro510XL's mentioned earlier are a great choice for someone that doesn't need all the bells and whistles of a bigger radio. They are small and are easy to tune for a few extra watts*. The Cobra 29 is another popular radio and can be found used on eBay in the $50 range. Fiberglass antennas are fine, and a 4' is much better than a 3'. Avoid the cheapies though, the antenna is a vital part of the system. Francis antennas are a great choice and only ~$20. Stay away from dual antennas, they are not needed for 99% of 4-wheeler installations and often cause more problems than they solve. Also, find someone with an SWR meter to help tune the antenna setup. A stock radio with a great antenna setup will usually out-perform a "peaked and tuned" radio with a crappy antenna setup.
CBs are handy for short range communications. Just know that any over-the-air communication is public and can be monitored.
*This is technically illegal, but so is driving 3 mph over the speed limit. I've never heard of someone getting busted over having a basic tune-up on a CB. Stay away from linear amps and MOSFET mods and you shouldn't have (or cause) any problems.