Leaders Rochdale extended their lead at the top of League Two to nine points on a day when Cheltenham and Burton fought out an incredible 11-goal thriller.
Joe Thompson's second-half header proved enough for a 1-0 win for Dale at Shrewsbury, who finished the match with 10 men after Shane Cansdell-Sherriff was shown a red card for a professional foul.
But there were goals aplenty at Burton, where Michael Pook's hat-trick gave relegation-threatened Cheltenham a dramatic 6-5 win in stoppage time.
A brace from Shaun Harrad (2 & 32, pen) had put the hosts in charge, but Justin Richards (54) and Medy Elito (56) levelled.
Burton then went 4-2 up through an own goal from Michael Townsend (58) and Steve Kabba (72).
A free-kick from Pook (84) reduced the deficit, but when Kabba made it 5-3 with just five minutes left, the victory seemed secure.
However, Pook (87) struck again, and Richards equalised with only seconds remaining. There was, though, still time for the Cheltenham midfielder to complete his hat-trick with a brilliant 25-yard effort and secure a remarkable victory.
Macclesfield paid tribute to their late manager Keith Alexander with a 2-0 win over Bury at Moss Rose.
After an emotional build-up to the first home game since his death, Ben Wright (30) gave the Silkmen the lead.
Bury, who stay third, then had Ryan Lowe sent off for an elbow, and Craig Lindfield (57) sealed victory.
Port Vale boosted their hopes of gatecrashing the top six as they romped to a 5-0 win at Chesterfield, where Marc Richards netted a hat-trick.
The Spireites' miserable afternoon was complete when Alan Goodall saw red five minutes from time, with Craig Davies making no mistake with the resulting penalty.
Robert Taylor (19) had opened the scoring for Vale.
Adam Le Fondre (61) was on target as play-off hopefuls Rotherham won 1-0 at Dagenham and Redbridge.
Struggling Grimsby earned a useful point at Morecambe thanks to Michael Coulson's second-half equaliser in 1-1 draw after Paul Mullin had headed the hosts into the lead.
Both sides finished with 10 men as Barnet lost 2-1 at home to Accrington.
Ian Dunbavin was sent off as the home side took the lead through a penalty from John O'Flynn.
Phil Edwards (59) levelled, and then missed a spot-kick as Clovis Kamdjo saw red for a foul on Billy Kee. However, Kee then won it with six minutes left.
Seventh-placed Northampton inflicted more misery on bottom club Darlington with a 2-0 win, thanks to first-half goals through John Johnson (20) and Abdul Osman (39).
Bradford beat Aldershot 2-1 at Valley Parade, with all the goals coming before the break.
Anthony Straker (8) put the visitors ahead, but the Bantams hit back through James Hanson (14) and Omar Daley (22).
Torquay continued their revival with a 1-1 draw against Crewe at Plainmoor.
The home side went into the lead through Scott Rendell (38), and looked on course for a morale-boosting victory when Shaun Miller missed a late penalty.
However, Clayton Donaldson popped up with five minutes left to nick a point.