We seem to keep getting the same question on the 2.0L 16V
stalling. Mine and others answers seem to be spread over
numerous threads, so I've dragged it all together here.
Although there are several reasons why it will stall, one of the
most common is the Small Breather Jet blocking up, and causing
the Idle Air Control Valve to malfunction. So this 'How To' will
just deal with checking for, and rectifying, this condition.
I don't believe in 'Monkey See, Monkey Do', so I'll try and explain
how the system works, at Idle. You must understand how something
works to be able to work out what will cause it to fail.
So below is rough, hand drawn schematic. It's not to scale and
it doesn't show everything. So pedants will have a field day,
but it should illustrate what you need to know.
Have a look, and then read the explanation below it.
I've followed it with a picture of the real engine bay.


As you can see, the Air flows in through the filter and into the
top of the Throttle Body to the Top of the Butterfly Valve, shown
in Red. Because the Butterfly is closed at Idle, the Air flow to the
Engine passes through the Idle Air Control Valve (IACV). Just follow
the Blue Arrows to see the flow. Note that the Inlet to the IACV is
above the Butterfly Valve and the Outlet is below it. This means that
the Air Pressure is Higher on the Inlet and above the Butterfly, than
the Outlet and below the Butterfly. This is due to the 'Suction' created
by the engine which is blocked off by the closed Butterfly.
Also note that the IACV is a Twin Valve arrangement, with the Air
passing round the back of the IACV to give flow through the Second
Valve as well as the first. This is important to understand for when
you clean the IACV. But more on that later.
Now note the 2 Breather hoses coming out of your Cam Cover.
The larger hose connects to the Intake Trunking between the
Air Filter and the top side of the Butterfly, so is subject to the
relatively Higher Pressure than the relatively Lower Pressure
underneath the Butterfly.
The Smaller Breather Hose is connected to a Jet that connects
below the Butterfly Valve, so is subject to the relatively Lower
Pressure.
So this means that the Smaller Breather Hose is connected
to a Lower Air Pressure than the Larger Breather Hose.
So, during normal Idle operation, the oily fumes will travel
towards the Lower pressure, via the Smaller Breather Hose,
and will not pass through the Throttle Body and IACV.
Now then, what goes wrong?
The smaller breather hose connects to a JET that narrows
down to approx 1.6mm. If you remember your Gas Laws,
Pressure1 divided by Temperature1 = Pressure2 divided by Temperature2.
So, as the Air whistles through the 1.6mm jet, it suffers a large
pressure drop. This means that it must also suffer a large Temperature
drop to keep the equation equal.
Under certain conditions, this would mean the water particles in the
air would freeze and block the Jet.
So the Jet is heated by coolant that is passed around the Jet via a Banjo
coupling.
This heating gradually cooks the oil and carbon and blocks this Jet.
Now then, with this Jet blocked, the oily fumes, at Idle, can no longer
pass through the Smaller Breather Hose. So they pass through the
Larger Breather Hose and through the Throttle Body and the IACV.
The oil starts to coat the internals of the IACV and build up until
they block the Air passages, thus restricting or stopping the Air flow.
Result? Your engine is starved of air and stalls.
So you can now see why cleaning or replacing the IACV will only be
a temporary fix and will just waste you time and money.
So how do you check for this? Refer to the following picture.

Disconnect the Smaller Hose from your cam cover.
Start your engine and let it Idle. Check for a suction on the Small
Breather Hose by placing your thumb on and off the end of it.
No suction? Your Breather Jet is blocked.
Continued......... Please do not add to thread.