World champion Lewis Hamilton will start the Bahrain Grand Prix from pole position for the first time after clinching his fourth straight pole of the season, well ahead of Sebastian Vettel.
Hamilton, who leads Formula One after winning two of three races so far, finished 0.411 seconds ahead of Vettel, and 0.558 clear of Mercedes teammate Nico Rosberg, who began the previous two Bahrain GPs from pole.
Ferrari are very quick and they will be very hard to beat tomorrow with a great race pace
Hamilton is odds-on to win his ninth race in the past 11 in Sunday's grand prix under floodlights, where the cooler evening temperatures are better suited to his Mercedes car.
But having lost to Vettel's Ferrari in Kuala Lumpur, Hamilton remains cautious.
"I feel very happy, coming into the weekend that was the target - to try and really master the track,'' Hamilton said after securing his 42nd career pole. "Ferrari are very quick and they will be very hard to beat tomorrow with a great race pace."
Ferrari's Kimi Raikkonen qualified in fourth place, confirming the two teams have the dominant cars of the season so far.
Vettel is shaping up as Hamilton's main rival, which must rile Rosberg.
Vettel drove brilliantly to win the Malaysian GP, outwitting Hamilton to send a clear signal that Ferrari is back with a bang after a miserable season last year where it failed to win a race.
"It was a tough session. Very happy with the front row,'' said Vettel, who has been revitalised since his summer switch from Red Bull.
"We are progressing as a team. We didn't bring any particular upgrades (so) it's a circuit that's a little bit better for us. We're trying to push in all areas and today it was great to split (the Mercedes).''
Starting grid (Top-10):
1. Lewis Hamilton (Britain) Mercedes
2. Sebastian Vettel (Germany) Ferrari
3. Nico Rosberg (Germany) Mercedes
4. Kimi Raikkonen (Finland) Ferrari
5. Valtteri Bottas (Finland) Williams-Mercedes
6. Felipe Massa (Brazil) Williams-Mercedes
7. Daniel Ricciardo (Australia) RedBull - Renault
8. Nico Huelkenberg (Germany) Force India - Mercedes
9. Carlos Sainz Jr (Spain) Toro Rosso - Renault
10. Romain Grosjean (France) Lotus - Mercedes