The Briton clocked a time of 1:22.997 and his Mercedes team-mate Nico Rosberg was behind him in second.
However, the German caused some late drama when he stopped at the end of the pitlane before getting out of this car towards the end of the session.
"It seemed like the engine stalled," Mercedes technical boss Paddy Lowe told the BBC. "We don't know more than that at moment, but it was not planned. We found a few issues last night which we were able to correct and he started in a bit better place today and we saw that in the lap times."
Spanish Grand Prix
Hamilton overtakes Verstappen to win Spanish GP
3 HOURS AGO
FULL RESULTS
1) Hamilton, 2) Rosberg 3) Vettel 4) Kvyat 5) Sainz 6) Hulkenberg 7) Verstappen 8) Alonso 9) Ricciardo 10) Grosjean 11) Maldonado 12) Massa 13) Button 14) Bottas 15) Perez 16) Raikkonen 17) Nasr 18) Ericsson 19) Stevens 20) Merhi
Spanish Grand Prix
Lewis Hamilton wins Formula 1 Spanish GP - As it happened
5 HOURS AGO
Spanish Grand Prix
Hamilton claims historic 100th pole at Spanish GP in Barcelona
YESTERDAY AT 15:07