As the title says, I'm interested to know whether all the Canon lenses will fit onto any Canon DSLR body. Simplest example question I can think of is will an 'L' series lens fit onto my 500D? ALso, what about EF and EF-S lenses? Do they fit onto anything from a 500D to the 5D MKII or the 1D?

Reason why I ask is that I"m starting to think a bit more seriously about purchasing some glass. I think it would be better for me to do that than upgrade the camera body. So I don't want to buy a lens and have it not fit onto my 500D. Similarly, I don't want to buy a lens, and upon upgrading the camera body, have the lens not fit with the new body.

I've tried searching the web, with no luck, or I'm blind. Either one.