DS, of course, has it's own games, PLUS it can play GBA games. It also has Wi-Fi, 2 screens (one of which is a touch screen) and a built in microphone. Nice. The problem is that it has no link cable ports (so to trade or do multiplayer on GBA or GB games you need a GBA) and it can't play GB games (just DS and GBA games).
GBA is pretty simple, it has a link cable port that is compatible with both the GBA and Gb link cable, as well as a wireless adapter, and it can play GB and GBA games.
It depends what you're looking for, really.
Edit: BTW, this belongs in Nintendo Discussion.