The Mercedes driver is the first Briton since Damon Hill in 1995 to get four straight poles and has set himself up perfectly to keep the pressure on championship leader Sebastian Vettel, who starts Sunday's race from second ahead of teammate Mark Webber.
"I dropped to five, six seconds back, so I didn't know what was going on," Hamilton said. "But I kept pushing ... I feel so fortunate to get pole."
He had expected worse.
"When I started the lap, I looked at the screen and I was seventh or eighth and it was raining more and more," Hamilton said. "I feel quite comfortable in changing conditions and I feel I am able to find my limits."
Many observers predicted Hamilton's off-season transition from McLaren to Mercedes would be difficult, and while he took until last month's Hungarian GP to get his first win, Hamilton has been remarkably consistent in qualifying. Hamilton starts on the front row for the seventh consecutive race and eight from nine.
"I feel I have been driving well for some time now," said the 2008 F1 champion, who is fourth overall and needs to make up 48 points on Vettel in nine races.
Teammate Nico Rosberg starts from fourth on the grid. The German has three poles this season — all consecutive — giving Mercedes eight from 11 altogether.
Vettel has the other three, but the last was when he won from the front at the Canadian GP in June.
"I saw Lewis catching me up in the last lap, so I could have gone quicker," Vettel said. "Let's now see what happens tomorrow when we expect similar conditions."
Hamilton left it to the last second to beat Vettel's time as the lead changed hands in a flurry of activity.
Rosberg, Webber and then Vettel beat each other's marks, only for Hamilton to go fastest for the fifth time this season and the 31st time in his career.
He let out a long scream of delight on crossing the line.
"I just hope we can do that in the race tomorrow," Hamilton said. "The (Mercedes) guys have done a fantastic job to bring the right package here."
Mercedes has won three of the past five races and has the edge on Red Bull for speed if not durability.
Paul di Resta qualified in fifth and the British driver looked set for an upset until the drivers came back out on new tires.
Last year's winner Jenson Button starts from sixth for McLaren, ahead of Lotus pair Kimi Raikkonen and Romain Grosjean. But it was a bad afternoon for Fernando Alonso, who was ninth for Ferrari — which has struggled in qualifying all season.
"The aim is to win. Anything can happen here," a defiant Alonso said. "If we manage to pass people in front, we have the pace."
Alonso was fastest in the first qualifying run ahead of Hamilton, with Dutchman Giedo van der Garde a surprising third.
Raikkonen topped Q2 ahead of Alonso.
The rain returned for Q3 and up went the umbrellas around the 7.004-kilometre (4.352-mile) circuit — the longest on the F1 calendar and most difficult along with Monaco.
Di Resta gambled on some parts of the track keeping dry because the unique microclimate in Spa means it can be wet and dry in different places. He stayed out while all the others funneled back in single file to switch to intermediates.
"I saw umbrellas coming up so I made the right choice," he said. "It was the right time, but our car is not that quick in the wet."
The unpredictable and rapidly-changing conditions induced a sense of panic in the air around the thick Ardennes forest.
"We need to get out there as soon as possible," Rosberg barked over race radio.
It made for painful viewing back in the paddock.
"I think I aged about 10 years," Red Bull team principal Christian Horner said. "The boys did a tremendous job to turn around both cars and get them out in time."Suggest a correction