I would definitly look at the IAC valve. You can normally take it out and clean the pintle with carb cleaner and the inside of the throttle body that the IAC vavlve goes into (make sure it is O2 safe). Sometimes carbon and gunk will build up and it can't move freely to adjust to proper RPM. I had a similar problem on an older GMC Jimmy. Cleaned it and that was that. The IAC valve adjusts the amount of air going into the motor when the throttle is closed, like when you are stopped. When too much gets in the RPM's are high. When too little air gets in, the engine dies. This is why when you blip the throttle it keeps running. You Can also have somebody with a scanner check the voltage at the IAC valve and the MAF as Cyclemut suggested and compare it to a known good value to determine if the sensors are working properly. I'd start with cleaning the IAC valve first, then going from there.