France clinched their first victory in Bulgaria for 85 years to move back to the top of Group A in the race to qualify for next year's World Cup finals.
Les Bleus had failed to win on any of their last seven visits to Bulgaria but Blaise Matuidi's early goal proved enough for a 1-0 victory in Sofia.
Sweden had applied the pressure with an 8-0 thumping of Luxembourg, who held France to a goalless draw in their last outing, earlier in the day.
That saw the Swedes temporarily move into top spot but victory means France know that three points at home to Belarus on Tuesday will book their place in Russia.
Boss Didier Deschamps made his intentions clear by naming a front trio of Kylian Mbappe, Alexandre Lacazette and Antoine Griezmann.
Griezmann was involved in the opener after only three minutes, showing a deft touch to set up Matuidi for a fine finish from a tight angle.
In very wet conditions, the visitors looked determined to put the game out of sight.
Mbappe forced a save from Plamen Iliev at his near post before Griezmann sent an acrobatic volley just wide.
The front trio then teamed up to create a great opening for Lacazette in the 29th minute but Vasil Bozhikov denied what appeared a certain goal with a brilliant late tackle.
France were forced into a change when Chelsea midfielder N'Golo Kante tweaked a hamstring and was replaced by Adrien Rabiot of Paris Saint-Germain.
Bulgaria had been non-existent as an attacking force but almost equalised in the 37th minute.
Todor Nedelev's shot did not appear too troublesome but Hugo Lloris could not hold it in the slippery conditions and the ball was lifted up to Georgi Kostadinov, whose header was brilliantly kept out by the French keeper as he threw himself across the goal.
The half ended with Mbappe shooting just wide but the impetus went out of France in the second half and they began to look lacklustre.
However, they never appeared in serious danger of conceding an equaliser and comfortably held on for three vital points.