However, wet weather in qualifying made for an unpredictable session, and Hamilton took pole from Bottas to secure a Mercedes front-row lock-out.
First, for his excellent qualifying performance in the wet on Saturday, which won him an important pole position.
Bottas and Vettel touched cars during the overtaking move, with some debris flying off the Mercedes.
It was a great finish for Red Bull's Daniel Ricciardo, looking easily set to take the fifth place his team had targeted, but as he made a dart for P4, Bottas stayed deep in the corner and struck the Australian's vehicle - with a steward's inquiry set for after the race.
Mercedes were better on the wet track, no longer struggling for grip, and Valtteri Bottas was able to come in second behind his teammate and world championship leader, 0.260 seconds behind to be exact.
How did Hamilton and Mercedes do it?.
Social media companies continue to get slaughtered on Wall Street
This sequential decline marks a stark change from the six million monthly active users Twitter added in its first quarter. The total of suspended Twitter accounts in May and June stand at 70 million, according to the Washington Post .
Vettel was the odd one out among the top four as he had started on the soft tyre and therefore could go further into the race before stopping.
"I just don't have that grip", Hamilton, who also spun, said over the team radio in response to being told Vettel's fastest time.
A pit-stop error by the Ferrari crew looked to have cost Vettel second place, when the front-left tyre was slow going on.
From hoping to attack Hamilton, Vettel now had to try to find a way past Bottas. The Toro Rosso of Pierre Gasly was in sixth; Kevin Magnussen in the Haas was seventh, with his teammate Romain Grosjean 10th; Carlos Sainz in the Renault was ninth. It also came just one week after Vettel crashed out of the lead of the German Grand Prix, putting extra pressure on the Ferrari driver when racing resumes at the Belgian Grand Prix in three weeks' time.
The rain that fell more heavily in the second phase put a premium on getting in a good early lap but Canadian Lance Stroll spun his Williams in front of him and the Australian had to abort his effort.
Raikkonen had pitted for a second time on lap 38, but Mercedes saw a greater overall advantage in leaving Bottas on track ahead of Vettel than trying to cover off the second Ferrari with a more conventional strategy. "He then aborted the lap". In that time, Hamilton had managed to pull a 17.1s lead over his title rival, skewing the result massively in Mercedes favour on the timescreens even though Ferrari had the fastest vehicle in clear air.