In a clash of Division Two’s early-season front-runners, Derbyshire chose to bat and made 318, to which Warwickshire replied with 32 for one by the close.
The visitors’ linchpin was Madsen who steered his side away from early trouble with a classy 144 (203 balls, 14 fours) - his 27th first-class century. It was completed despite a painful blow on the head from a Henry Brookes bouncer when the batsman had 82. After a seven-minutes-and-20-seconds delay for treatment, Madsen carried on with resolve undiminished to at least partially vindicate Derbyshire captain Billy Godelman’s decision to bat first.
At 84 for four and 209 for six, that decision looked dubious, but Madsen led determined resistance against a Warwickshire side which suffered another injury blow to its seam-bowling department during the day. Already without Olly Stone and Keith Barker, the Bears lost Ryan Sidebottom who suffered a side-strain midway through his tenth over in mid-afternoon.
Having chosen to bat, Derbyshire did so unevenly in the first session. Ben Slater looked set to continue his vibrant early-season form when he moved crisply to 16 (23 balls) but top-edged a pull at Chris Wright to mid-on.
See who you can pick out in our fans gallery from Mansfield Town v Derby County
Supercomputer predicts the most likely result for Leyton Orient v Mansfield Town, Bradford City v Newport County, Stockport County v Colchester United and every other League Two game
Former Mansfield Town boss Mick Jones dies aged 75
One more new face in for Mansfield Town as early injuries mount?
Mansfield Town boss Nigel Clough proud of players and fans as Stags are pipped by Derby County in Carabao Cup classic
Warwickshire captain Jeetan Patel then took two wickets in his first 13 balls. Luis Reece offered a return catch then Alex Hughes top-edged a sweep and was brilliantly caught by Will Rhodes running back from square leg.
When Henry Brookes hit Godleman’s leg-stump, Derbyshire were 84 for four and needed some shoring up. Madsen, dropped on 13 and 87, obliged with valuable support from Gary Wilson (34, 49 balls) and Matt Critchley (30, 41). After Wilson edged Wright to slip, Critchley batted positively until he fell lbw to Patel who soon collected his fourth wicket when Hardus Viljoen nicked behind.
Hamidullah Qadri edged Brooks to second slip but then it was the turn of Duanne Olivier (40, 72 balls, seven fours) to dig in alongside Madsen. The ninth-wicket pair added 67 in 16 overs before Brooks bowled Madsen and Mark Footitt in five balls. Eighteen-year-old Brooks finished with a career-best four for 63 and Patel four for 94.
Warwickshire were left with 12 awkward overs batting as the floodlights fought the increasing gloom and lost Dominic Sibley who fell to an exceptional catch by Critchley at fourth slip off Olivier.