Lyon stage Houdini act to reach cup final
Jimmy Briand of Lyon had set up the additional half-hour by making it 2-2 four minutes into injury time.
Lyon will meet holders Olympique Marseille or Nice, who play on Wednesday, at the Stade de France on April 14.
Lorient were the better side for more than an hour but Lacazette's first goal of the night 10 minutes from time spurred Lyon into action.
The home side had to wait until the 59th minute to take the lead, Innocent Emeghara dribbling past defender Cris to score.
Kevin Monnet-Paquet made it 2-0 in the 68th when the Lyon defence failed to clear in the area, leaving the midfielder free to beat keeper Hugo Lloris with a powerful angled drive.
Lyon's rearguard looked vulnerable throughout and they came close to conceding a third when Maxime Barthelme's shot was cleared off the line by Anthony Reveillere.
Lacazette pulled one back for the visitors with a low drive from just inside the box before France striker Briand headed the equaliser.
Lyon went in front when Gomis benefited from a defensive error to beat goalkeeper Benjamin Lecomte from close range in the 102nd minute and Lacazette completed victory in the dying seconds.