On older cars, a choke is a knob on the dashboard, sometimes referred to as the cold start assist.

Pulling the choke knob out causes a flap on the air intake to close, restricting the airflow, hence enriching the gasoline air mixture1, enabling the car to start more easily and run more smoothly when the engine is cold. Some chokes also increase the idle tickover to help with warming up and reduce stalling.2

A common problem is to use too much choke trying to start the car, and flooding the engine.

Manual chokes have been replaced, first by mechanical automatic chokes, then later by software in the engine management unit. A mechanical automatic choke works the flap by means of a bimetallic strip.

Cold start problems have not been completely solved by engine manangement electronics. There can still be problems in the temperature sensors, wiring or one of the stepper motors, which are difficult to diagnose let alone fix, and require specialist knowledge. EMUs sometimes fail in the opposite way, racing at idle and running on.

1According to stupot, on an SU carburetor, the choke doesn't move a flap in the air intake, instead it opens the jet supplying the fuel to make the mixture more rich.

2Thanks to sideways for pointing this out.