The RSF driver was stuck in 11th at the start of the red-flagged race but gained a place on the restart which followed an early incident at Fishermen's Bend involving Gustavo Menezes, Ryan Tveter and Mitsunori Takaboshi.
Ninth came courtesy of early front-runner Sam Macleod who picked up a puncture at the end of lap eight after a brush with the barriers at Moorish. The Team West-Tec driver was third at the time.
The Scot's demise left Dennis sandwiched between Alessio Lorandi and Arjun Maini until Prema's Lance Stroll was dropped to eighth by the Italian with five laps to go.
Thereafter, Dennis - who once again appeared to lack straight-line speed - had little option other than to follow in his team-mate's tracks while maintaining a respectable gap to Maini behind.
Fellow Prema driver and poleman Felix Rosenqvist secured the win after losing the lead to Van Amersfoort's Charles Leclerc shortly after the initial start.
But, when racing resumed, the 2014 winner slipstreamed past the Monegasque on the exit from the Mandarin Bend and retained the lead all the way to the finish.
In doing so the 2015 FIA Formula 3 European champion became only the second back-to back winner of the prestigious F3 grand prix after Edoardo Mortara who pulled off the same feat in 2009/10.
Leclerc and Double R's Alexander Sims claimed the remaining podium places.
"It just wasn't my weekend here in Macau," Dennis Tweeted. "Really unlucky. But now to focus on my 2016 plans."