He outsprinted Italy’s Matteo Trentin, with Stefan Kung (Switzerland) completing the podium.
Trentin opened the sprint but Pedersen, 23, held on for the victory, with both riders recording the same time. Kung trailed by two seconds.
“It’s unbelievable. We didn’t expect this when we started this morning,” said Pedersen, who became the first Dane ever to win this title.
“We thought at first it would be Van der Poel, then everybody thought Trentin was going to win. He surprised everyone in that sprint.”
He added that when he saw the finish line he hoped all the pain would be gone and that he would be able to execute a good sprint.
“It was six and a half hours on the bike, so everyone was on the limit and anything could’ve happened in that sprint.
“With it being one of the last races of the season, it was all about staying focused, not getting any bad luck and hoping for the best.”
Trentin felt that Pedersen was just the stronger rider on the day.
“The cold has played a major role. It was a very tough course. I wanted the rainbow jersey. If you are then second, you will be disappointed. But when you see how Mads wins the sprint, you know he was the best today. ”
Due to the heavy rain organisers decided to cut a testing section on the North York Moors and added two laps of the 14km Harrogate circuit, which resulted in riders having to complete nine laps. The race was also shortened by 23.5km to 261km.
More results can be viewed below.
Elite men’s results
1. Mads Pedersen (Denmark) 6:27:28
2. Matteo Trentin (Italy)
3. Stefan Kung (Switzerland) +0:00:02
4. Gianni Moscon (Italy) +0:00:17
5. Peter Sagan (SVK) +0:00:43
6. Michael Valgren (DEN) +0:00:45
7. Alexander Kristoff (NOR) +0:01:10
8. Greg Van Avermaet (BEL)
9. Gorka Izagirre (ESP)
10. Rui Costa (POR)
DNF Stefan de Bod (South Africa)
DNF Nic Dlamini (South Africa)
DNF Daryl Impey (South Africa)
DNS Jay Thomson (South Africa)