I would stay away from players that use solidstate memory like Compact Flash, etc. They're fine players, but you can't carry much music around (and that's the whole point of MP3, right?). You can carry extra memory cards, but that's a hassle IMO.
The models that use a laptop harddrive (Archos, Apple Ipod, etc) let you carry a lot of music, but have other faults. You can hear/feel the harddrive spinning up, seeking, etc.
I have an Archos 5000 (5gig drive). It's slightly larger than a deck of cards and carries all of my music (I don't have a big collection). I rip my CDs at near max rates. Each CD takes up about 80-100 megabytes. My biggest grip is the battery system. It uses proprietary, rechargeable batteries that can only be recharged in the unit (there might be an extra, external recharger).
Something to consider: If your son is a audiophile, he probably won't like MP3. I'm not quite an audiophile and the quality annoys me. However, it's tops for easy portability.
Another option is a portable CD player that can play MP3s. You can put more music in MP3 format on a CD than it can hold as audio tracks. Plus, the MP3/CD players can play music CDs as well.
Hope this helps,
Chris