World champion Michael Schumacher has set his third consecutive pole position this season at the Bahrain Grand Prix.
The German driver headed a Ferrari one-two, beating team-mate Rubens Barrichello by 0.391secs with a lap of one minute 30.139 seconds.
Williams drivers Juan Pablo Montoya and Ralf Schumacher set the pace in the first session but fell short when it mattered to be third and fourth.
BAR driver Jenson Button was sixth with McLaren's David Coulthard 10th.
Button was beaten by team-mate Takuma Sato for the first time this season, with the Japanese driver lining up an impressive fifth fastest at F1's first Middle Eastern Grand Prix.
Jarno Trulli was the fastest Renault driver in seventh place after team-mate Fernando Alonso made a series of mistakes on his qualifying lap for the second race in succession.
Toyota drivers Olivier Panis and Cristiano da Matta were eighth and ninth.
Both Williams drivers had the speed to beat Schumacher but made mistakes on their laps.
Montoya held it together for longer - the Colombian was up at the end of the second sector of his lap only to lose time at the last corner. Ralf Schumacher made his mistake in the middle of the lap.
"It's a shame, because I was having a really good lap and I was really quick in the first and second sectors," Montoya said.
"I lost all my advantage and even more in the third part, in the last corner actually, where I was trying to find a bit more speed.
"I'm not sure I could have set the pole without that problem, because Michael was really quick."
Michael Schumacher said he expected the track would create a tough race on Sunday.
"I think it will be something very difficult to handle during the race," he said.
"It's simply because it's so slippery as soon as you get off line a little bit.
"I was confident we would fight for the pole. Whether it would happen or not happen, I thought it was going to be very close."
McLaren driver Kimi Raikkonen, who was third fastest in first qualifying, did not complete a lap and will start from the back.
Noteworthy performances outside the top 10 came from Giancarlo Fisichella and Christian Klien.
Button was beaten by team-mate Sato for the first time
Fisichella beat Sauber team-mate Felipe Massa for the first time this season, setting a lap 0.8secs quicker than the Brazilian for 11th place.
Fisichella is one place ahead of impressive Jaguar rookie Christian Klien, who beat team-mate Mark Webber for the first time.
Australian Webber, who was second on the grid last time out in Malaysia, could only manage 14th, just under 0.3secs behind Austrian Klien.
Jordan's Nick Heidfeld, who qualified 15th, has suffered the same fate as Raikkonen after his engine failed in practice on Friday.