This information is from a post by Joshua Yu on the TechArena forums.
Restart your Background Intelligent Transfer Service. The easiest way is Start->services.msc->Enter to open the Services master control, Find the background Intelligent Transfer Service, Right-Click->Restart. I don't know if this is strictly necessary, but if your BITS isn't started, or not set to Automatic(Delayed), then you should try that.
Install the latest Windows Update Agent. Don't follow the instructions in this link. They are for amusement only, as a samaritan at the bottom provides us with a more helpful set of links about updating Windows Update:
Anyway, the three current links are:
Those specific links are current as of 8 March 2009, but check the main page if it is much later than that. Run the executable, all should go well. I had UAC turned off for just this, but probably could have left it on.
Next, yes there's more, execute these commands:
regsvr32 wucltux.dll
regsvr32 wuaueng.dll
regsvr32 wups2.dll
regsvr32 wuapi.dll
regsvr32 wudriver.dll
regsvr32 wups.dll
regsvr32 wuwebv.dll
One way to accomplish this is Start->cmd to open a shell. You might want to Right-Click on the search result cmd.exe and select Run as Administrator, never know. Then from there, type those lines in one at a time. Some of those might raise errors, others will report complete. Ensure the errors aren't typos, and ignore any others.
Another way you could do this is to create a text file, paste those lines, save the file as RegisterWindowsUpdateDlls.bat, launch that, and done.
Now go to Start->All Programs->Windows Update and start it up. If this was your problem, it should be fixed by now.
There are other things one might do, explore those forums if this didn't work. Some folks stop the wuauserv before running the regsvr32 commands. There are registry entries one can check, but they didn't apply to me. Do a search, maybe reboot, Good luck.