The RSF-backed Prema driver - who qualified second for race one earlier in the day - was one of several drivers caught out by a late red flag.
Dennis had just set his best sector 1 and 2 times when the session was red-flagged for a second time with less than a minute to go and not restarted.
That left him relying on his previous best time of 2m 14.579s which was only good enough for a row four start in Saturday afternoon's race two.
But on second best times - which determine the grid for Sunday's race three - his 2m 14.665s lap landed him his fourth pole of the season.
Less than nine-hundredths of a second separated the two laps at the end of the session which Mucke's rookie Mikkel Jensen topped to land pole for race two. The Dane's second best lap was also quick enough to earn him a front row start for race three alongside Dennis.
Prema's race one pole-winner Felix Rosenqvist lines up fourth and seventh for the two races while Carlin's championship leader Antonio Giovinazzi and Van Amersfoort's title rival Charles Leclerc also fared badly in the difficult conditions.
The Italian will start from 12th and 18th on the grid, the Frenchman from 13th in each of the encounters.
"The mixed track conditions together with the two red flags - particularly the second which cut short what looked like being my best lap - made the session a bit of a lottery in the end," said Dennis.
"But on a track like this, which provides more overtaking opportunities than most, seventh shouldn't be too much of a handicap. With a decent start, it should be possible to make progress from there.
"And if I make the most of the front row starts I've got for the other two races I should be able to close the gap to Giovinazzi at the top of the table."