Externals allows for far more media to be used (best use just biological and mechanical IMO), take up less space in the tank, generally provide higher flow rates and actually expand the volume of the aquarium a little.
i would go for external everytime,i have a tetratec ex1200 ( £70) and i really love it ( yes, its sad but i do) internals take up room, need more regular cleaning ( in most cases) and as 3 fingers says, not much media
with a filter you idealy want 5 or more times the total tank turnover, so for a 200l tank you would want a filter rated for 1000 lph. or more,
and you will only get that with an external...
I like undergravel filters for some tanks. They cover the entire base of the tank and provide a huge surface area for the filter bacteria to live. They are easy to clean with a gravel cleaner and run off an airpump or powerhead.
If you have a number of tanks then using a big airpump and undergravel filters is a cheap way to filter lots of tanks. You also use fewer power points compared to running a power filter on each tank.
Undergravel filtration is useless in tanks with lots of big rocks or driftwood. These items prevent the water flowing through the gravel and reduce the filtration area. In such tanks an external filter is a much better choice.
My preference for external filtration is a trickle filter. They hold lots of filter bacteria and can handle huge biological loads. If they are made with a big sump area then they can increase the tank's water volume considerably.
The drawback to trickle filters is the noise they make when the water drains out of the tank. If not set up properly, or poorly designed, it can sound like a creek gurgling away in the tank.