A slot 2 flash cart lets you play both NDS and GBA games, and usually has either internal memory or a microSD slot, just like slot 1 carts. However, in order to play NDS games, you have to have a passme cart in slot 1, which is why slot 1 carts aren't very popular any more.
A GBA expansion cart is also a slot 2 cart, but has only enough internal memory to hold a single GBA game. It works with a slot 1 cart to allow you to play GBA games that are stored on the slot 1 microSD card (the game is loaded to the GBA expansion cart in order to play the game). GBA expansion carts can also work as extra memory needed for the Opera browser.
The EZFlash 3-in-1 is a GBA expansion cart. It has no microSD slot. It has only enough internal memory to play 1 game (well, technically two, but for most purposes 1). The .gba files are stored on the microSD card of your slot 1 flash cart, and loaded to the EZFlash 3-in-1 to play the game.
-Bri