I would first clean the throttle body with a can of aerosol throttle body cleaner. The real goal of that being to actually get the IAC (idle air controller) clean. The IAC's sole job is to provide all of the engine's air at idle so when it gets dirty and hangs, the engine will either not idle or start unless you also step on the gas pedal.
Search for threads by me (use Advanced Search) on cleaning the IAC, they will give more details and a drawing I can't post at this time since I am only on a cell phone at the moment.
If the engine starts and idles ok when you step down on the gas pedal a little, you can bet the problem is caused by a dirty IAC.