Excess start items is often a culprit, also. Trim them to those you only need to run. (Use msconfig). This is particularly applicable if it takes a long time to boot, but then runs only a little slow. There are quite a few programs that come with windows that I reckon are a waste of space. (Like messenger).
If the HD is more than about 70-80% full, things will load slower.
As stated above, clean up temporary files, and defrag. CCleaner is and excellent application for the former, JkDefrag or Auslogics deffragger for the latter.
AdAware and Spybot don't find as much as they used to. Try Superantispyware, instead (As a demand scanner, don't configure it to load at start, which is it's default.) Or you could try an online scan with TrendMicro's housecall, or Fsecure or similar, for peace of mind.
You might want to consider installing a second HD (if not installed already), transfer the files/program installers etc you want to it, and just keep the OS and other programs running on the C drive.