Sainz had nothing at stake since he was starting from the back of the grid after multiple engine-part changes, so Ferrari used him to give Leclerc a tow on his two runs in Q3.
Leclerc was up by just .008 seconds from Verstappen after his first run. The team worked seamlessly on Leclerc's second run as he beat his own leading time and finished .3 seconds ahead of Verstappen and .46 clear of Verstappen's Red Bull teammate Sergio Perez. Lewis Hamilton qualified in fourth for Mercedes.
Leclerc thanked Sainz on the team radio after his seventh pole of the season.
Sainz's engine caught fire near the end of the last grand prix in Austria two weeks ago. He was handed a 10-place grid penalty on Friday because Ferrari changed the power unit, and extra engine changes on Saturday sent him to the last row with Kevin Magnussen, whose Haas team made similar engine changes.
McLaren's Lando Norris was fifth and Hamilton's teammate George Russel in sixth. Russel was still in the drop zone with four minutes left in Q2, and was worried about a potential yellow flag scuppering his final lap so he asked to come out as early as possible. McLaren's Daniel Ricciardo was 11th and eliminated.
Earlier Saturday, Verstappen comfortably led the third practice by .35 seconds from Sainz and .64 from Leclerc, with Hamilton fourth.
Hamilton is taking part in his 300th race and seeking his first win of the season after three straight podiums.
Ferrari topped both Friday practices through Leclerc then Sainz.
Ferrari is seeking a third consecutive victory following Sainz's win at Silverstone and Leclerc's drive to victory in Austria, where he trimmed Verstappen's overall lead to 38 points.
Red Bull and Ferrari have won the first 11 races between them, with Red Bull up 7-4.
The atmosphere at the Paul Ricard Circuit in southeastern France was calm compared to some of the boorish behavior at recent races.