Worcestershire 353 for 6 (Wessels 130, Ferguson 103*) beat Derbyshire 351 for 9 (Reece 128, Madsen 113) by four wickets
A brutal assault from Riki Wessels led an impressive run-chase that swept Worcestershire to a four-wicket victory over Derbyshire and a home quarter-final of the Royal London Cup.
Wessels smashed 11 sixes in his 130 from 62 balls before Callum Ferguson's perfectly paced unbeaten 103 from 95 balls eased his side to their 352 target.
Pat Brown had Billy Godleman caught behind in the first over but that was the Rapids' last success for 31 overs as Madsen and Reece took the bowling apart.
Josh Tongue conceded 40 from his first four overs and was twice ramped for six by Madsen who became the first Derbyshire batsmen to score 3,000 List A runs for 14 years.
Madsen also drove Brett D'Oliveira over the long-on boundary on his way to a 87th ball century - his sixth in List A cricket - which contained nine fours and four sixes while Reece reached his first 50-over hundred from 88 balls.
Worcestershire had bowled out the opposition for under 150 in their previous two games but they failed to apply any pressure until the Falcons had passed 250.
Madsen was caught behind driving at Ross Whiteley but the Falcons still had 400 in their sights until the innings stalled with the wickets of Tom Lace and Reece in consecutive overs.
Reece drove Wayne Parnell to long on and after Matt Critchley was run out, it was left to Alex Hughes with 43 from 31 balls to get Derbyshire up to 350.
It was still a tough chase but Wessels tore into the bowling, pulling Logan van Beek for three sixes on his way to a 31-ball 50.
He then pulled and drove Mark Watt for three consecutive sixes in an over that cost 26 and dispatched Alex Hughes for two more before his sixth four took him to a 47 ball hundred.
Tom Fell made 49 out of the opening stand of 152 before he played across Hughes and the Falcons finally got Wessels in the 23rd over when he pulled Matt Critchley to wide long on where van Beek took a running catch.
But he had put the Rapids in a strong position and although Ferguson faced 34 balls before he hit a boundary, he reached 50 from 59 to bring the target down to 79 from 10 overs.
He hit Watt for consecutive sixes and although Ben Cox was caught behind off Ravi Rampaul, Ferguson cruised to a 91-ball century that competed a highly impressive chase.