Everybody's comments seem very good and useful!
I use HOB and sponge filters. There are tons of filters out there that are really effective. It depends on your needs and how much you're willing to spend I guess. The canister filter is a really good investment if you have $$$.
One no-no I guess would be an undergravel filter. It's pretty old technology, though some people swear by it. IMO bad for rooted planted because there's too much water movement in the roots, takes away useful nutrients. Also, uneven suction in the filter might cause some "dead" zones and thus anaerobic pockets. Plus it's a pain to clean or to remove without disturbing the tank a lot.
For my HOB:
First layer: Porous Foam to trap large debris, mechanical + biological filtration
Second: Some sort of ceramic material (looks like 1-2 mm gravel) that I bought on sale when I was in Hong Kong for $20 HKD (about 2-3 dollars CDN) for bio-filtration.
Third: Large ceramic 'noodles' for more bio-filtration.
I used to have carbon material for chemical filtration... should get a back up for emergencies sometime when I have money. :icon_eek: IMO you don't really need carbon all the time if you have good biological filtration, though it's really useful for emergencies / removing some medication. It's pretty expensive because it stops working effectively real quickly anyway, thus lots of refills $$$. However, if you leave it in the tank even after its chemical part is used up, because of how fine the pores in the carbon are, nitrogen-converting bacteria settles very nicely in it, thus some added biological filtration.
I think other good, cheap media include filter floss--traps the really fine particles--"polishing" the water making it look really clear.
Peat filtration is good for adding tannins, and making water softer and yellow-er, lowering pH, creating blackwater conditions. Good for fish like tetras. But it's hard to control its effect because of the variability in the peat composition. Apparently the chemistry involved with peat is really complicated. Just don't use with carbon at the same time, kind of defeats its purpose.
Sponge filter = some mechanical + some biological filtration + air/water movement at night-time to release excess C02 (OR replenish extra C02 if your plants consume that much C02 during the day
In general, filter material with lots of surface area for bacteria to settle in is important, the nitrogen-converting bacteria also needs lots of oxygen to break down the waste. Everything else is pretty much extra $$$--it might give that added filtration, but your tank won't die without it.