I'm surprised that few recommend Canon 28-135mm IS USM f/3.5-5.6 which is really a legendary lens from film time. It actually comes often as a kit lens for 40D, it's cheap (~$300 for new on eBay) and works perfectly well for its price.
It is not fast and its IS is first generation - but for ~$300 you can hardly buy a good prime let alone decent zoom with USM and IS.
Regards,
Nikita.
http://www.flickr.com/photos/agilepixels/