Try checking your spark plugs & wires. Can also be caused by dirty fuel filter.
you need the fast idle adjusted on the engine you may have idle set where it sounds fine in idle but not high enuff when dropped in gear.
a pile of poo
Check the motor mounts.
vacuum leak?
autozone will scan codes for free.to see what is wrong!!
Could be a very dirty fuel filter.
MAF senso, or transmission fluid.
either bad gasket under throttle body or bad iac valve
Bad oxygen sensor
I have 91 chevy k1500, It does this, Sometimes it will idle a few minutes, then jump to high idle and check engine light comes on, And sometimes its as soon as i start the engine... I was told it was a vacum leak, But im no mechanic
Either you were low on gas, you need a transmission check, or the fuel pump may be going out.
Sounds like a vacum leak to me.