Awhile ago I made the mistake of getting the Firestone fuel system cleaner special.
Messed up my engine for a long time. Very high idle and bad fuel mileage. Finally after replacing the TPS and IAC all was well. That was a couple of years ago and now I've started having a slightly high idle problem but not the same as before.
It will idle fine at about 600 when parked or starting it up but when driving and then stopping at a light or stop sign it idles at about 1100. A very light tap of the gas pedal will bring it back down to 600 and all is fine until the next stop. Sometimes it's fine but more often than not recently it will idle high. Engine is the 4.0.