As a result, Bennett moves up 11 spots into 21st overall, one second behind Froome, and 56 seconds behind Dennis, who stayed in the lead by one second over Dumoulin.
Dennis and Dumoulin both finished in the second group on the undulating 202 kilometre course, which didn't deliver until the final throes, with the race stage sparking to life on the modest penultimate climb with 10 kilometres to go.
Two attacks were launched, before a crash with 6.5 kilometres to go on a pinch point left a bunch of riders stalled behind the leading group. Another crash with three kilometres left created a nervy finish, and a foursome managed to sneak a march on the peloton just before the final run-in to the line.
Wellens was part of that group, and with assistance from a teammate, he was the freshest when the other favourites tried to grind past him.
Bennett battled home 10 seconds later, and a similar stage is on the cards tomorrow, albeit with an easier finish, with the same faces likely to be involved at the end
Niall Anderson is covering every stage of the Giro d'Italia live for the Herald. He would prefer that the Giro stop taking an eternity to post the official results.