After a flat 171.1km ride from s’Hertogenbosch to Utrecht, the Bora-Hansgrohe sprinter finished in three hours 49 minutes and 34 seconds.
Bennett has won four stages during the three-week Grand Tour.
Mike Teunissen of Jumbo-Visma wins the race and earns the red jersey, followed by teammates Sam Oomen and Edoardo Affini in second and third place, respectively.
The first portion of the day was made more exciting by an escape that was made by Julius van den Berg, Thibault Guernalec, Jetse Bol, Xabier Mikel Azparren, and Pau Miquel. The group gained a lead of around five minutes before being caught by the peloton.
Alpecin-Decuninck moved their way to the front, only for Euskaltel’s Luis Angel Mate to make a solo break with 45km to go. He stayed out in front for 24km before being caught.
The peloton stayed together with teams tussling for position ahead of the sprint and when stage favourite Tim Merlier was forced out of position, Bennett was able to emerge at the front of the bunch and beat former world champion Pedersen to the finish.
It is another flat ride for stage three on Sunday, with a 193.2km circuit in a loop around Breda. That will be the last of the three stages to be held in the Netherlands, before the race transfers to Spain on Tuesday.