In-form vice-captain Joe Edwards scored twice as the Saddlers produced a ruthless attacking display to comprehensively beat Doncaster.
Edwards notched twice in three first-half minutes to put the hosts in control, with Kieron Morris netting a third before half-time.
Amadou Bakayoko made it 4-0, and although Tommy Rowe and Niall Mason replied for Rovers late on, Walsall were deserved winners.
Chances were scarce during the opening quarter of the match, with Morris seeing an effort deflected wide and Ben Whiteman curling off target at the other end.
The match burst into life at the midpoint in the half as Walsall - and Edwards - scored twice in three minutes.
The recalled Nicky Devlin created the first, whipping in a tempting cross towards the far post where Edwards rose above his marker to loop a fine header into the net.
Full debutant Justin Shaibu provided the second as he outmuscled Luke McCullough before accurately pulling the ball back for Edwards to side-foot a neat first-time finish into the far corner.
Rovers’ response was muted, with their only attempt before half-time being a Whiteman free-kick which curled harmlessly over.
Instead, Walsall extended the lead in first half injury time as Morris tricked his way into the box before drilling a powerful strike beyond Donny keeper Ian Lawlor.
The Saddlers could have added a fourth on 53 minutes when Jack Fitzwater headed inches wide from George Dobson’s deep cross.
Walsall were looking extremely comfortable and again went close to grabbing another goal, the marauding Devlin lashing over from Erhun Oztumer’s delightful scooped pass.
Oztumer was the architect as the Saddlers made it 4-0 with 18 minutes remaining – his perfectly-weighted pass putting Bakayoko through one-on-one and the substitute calmly slotted past Lawlor.
The hosts continued to attack with menace, Julien Ngoy having a strike blocked and Morris seeing a low shot held by Lawlor.
Doncaster pulled one back with three minutes remaining as captain Tommy Rowe combined with Alfie Beestin before drilling through the legs of Liam Roberts.
Incredibly, Rovers scored again moments later, Niall Mason converting a penalty after Andy Boyle had been fouled.
John Marquis then headed narrowly wide deep in added time, but it was too little, too late.
Team: L Roberts, Devlin, Fitzwater, Guthrie, Leahy, Chambers, Dobson, Edwards (Cuvelier 82’), Morris, Oztumer (Ngoy 78’), Shaibu (Bakayoko 60’).
Subs not used: Gillespie, K Roberts, Kinsella.
Attendance: 3,514 (282 Doncaster supporters).