Canister filters are better for a variety of reasons:
1. First when you do your water changes, you just unplug it, change water, plug it back in. No priming. If you tried that with a HOB filter you'd get a noise like the motor is dying & a poof of junk from within the filter.
2. Secondly due to their size being larger, there's more surface are for the good bacteria to grow.
3. They are much queiter.
4. The inlet & outlet can be spread out in the tank if you want.
5. Most have spraybars that distribute the clean water out better.
6. I think they're supposed to be more efficient and their gallons (or liters) per hour rating is usually more accurate.
7. Then there's the ease of cleaning, most models you just unplug both hoses with a single lever, and pull the whole unit out & bring to the sink or tub.
8. Most of the foam inserts & other mechanical filtration media is re useable unlike the junky felt looking, expensive inserts for HOB filters. I had an insert fall apart when I took it out, can you say "mini cycle?"
9. You can put the tank closer to the wall because you only have to account for the hoses, not some big, honking plastic piece of junk.
10. Most setups will only require the unit being cleaned once a month or even as much as once every 3 months depending on your stocking, etc.
I'm sure someone else will chime in with something I forgot but these reasons came to mind first when comparing the two types.
BTW, I'm changing over one of my 20 gallon tanks from a Penguin 200 to a Rena XP2. I'm sure I could get the smaller XP1 but I also plan to upgrade the size of the tank soon as well.