Do a clean boot - msconfig - click on services tab and hide all microsoft services - disable everything else.
Click on startup tab and disable everything.
I would keep a note of what you had enabled to begin with so you can undo your changes when you're done if need be.
Reboot - your computer, it should run perfectly, if it doesn't you're having problems with a driver, your system is corrupt or you're having hardware issues.
If it is running well, then start re-enabling each service/startup item until you find the program/service which is conflicting with Vista.
Stop using it...
It's time consuming - BUT WILL solve your problem.