After narrowly overcoming teammate Valtteri Bottas, Lewis Hamilton has taken pole position ahead of Sunday's French Grand Prix.
"I'm really happy with the pole, but I always strive for perfection and there was some time left on the track, so I still have stuff to work on", he said. "It would have definitely helped us in Montreal".
"It's a difficult one to get the right balance, I tried hard to give everything in the last attempt, and looking back, I pushed too hard", Vettel said after the session.
"We definitely pulled together and have done a better job so far this weekend, but it's going to be close tomorrow".
Behind the top three it's Max Verstappen and Daniel Ricciardo for Red Bull, with Kimi Raikkonen taking sixth for a three team front three rows. "We have a good auto".
Ricciardo, victor of two races this season and still mulling his future options, was third fastest for Red Bull in the first session in 1:32.527.
The track was slippery in the final session of qualifying after a few drops of rain fell early on.
The biggest loser from qualifying was Romain Grosjean, who lost control and put the nose of his Haas into the barrier after having made the cut for the 10 fastest drivers.
Spain's double world champion Fernando Alonso, victor at the Le Mans 24 Hours with Toyota last weekend, was only 16th in the first session but improved to eighth in the second.
Brendon Hartley will start the race from last place after Toro Rosso had to change his Honda engine on Friday. That earned him a grid penalty because the team had already used its allowance of engine parts.
Lewis Hamilton during the French Grand Prix race at Circuit Paul Ricard, Le Castellet, France on June 24, 2018.
Vettel returned to the pits for a new front wing while Bottas limped back on three wheels and a rim with the remains of the tyre flailing.