Wow. I just reduced my emacs startup time from 10 or more seconds to about 1. The secret is autoloading and eval-after-load. See the init files at my emacs config pages for more details. The main offenders were the programming modes, w3m, gnus and bbdb. I autload the packages when I call there access functions now and, not susprisingly, the start up is considerably faster.