The Saddlers suffered late heartbreak as Jacob Brown’s stoppage-time goal earned second-placed Barnsley a dramatic win.
Walsall started brightly, with George Dobson seeing a deflected shot saved by Tykes keeper Jack Walton and Isaiah Osbourne having a terrific volley disallowed for an earlier foul by Josh Gordon.
The hosts spurned a golden chance to open the scoring with 14 minutes on the clock.
Zeli Ismail tricked his past two defenders before finding Corey Blackett-Taylor, who played the ball through to Gordon but his powerful rising strike sailed over the bar.
Ismail was causing the visitors problems, fashioning another opportunity shortly after when he pulled an accurate low cross back to Liam Kinsella, whose first-time shot flew over.
The lively wide-man delivered another inviting cross which Blackett-Taylor headed wide, while Dan Scarr produced two important blocks at the other end.
Liam Roberts was called upon for the first time on 36 minutes, reacting well to tip over Mamadou Thiam’s rasping strike.
Back came the Saddlers, with Ismail creating half a yard of space before drilling into the side-netting.
Walsall thought they had taken the lead just past the hour mark.
Blackett-Taylor nipped in behind the Barnsley defence and squeezed his shot through the legs of Walton but Ben Williams got back to clear off the line.
Another chance came and went 15 minutes from time as Gordon’s low drive was blocked by Walton’s legs.
Walton came to Barnsley’s rescue again moments later, denying Ismail after the winger had been released by Osbourne.
His opposite number, Roberts, then made a smart save to foil Cauley Woodrow as both sides pressed for a winner.
And it was the Tykes who stole the win in added time as Brown stabbed past Roberts after a goalmouth scramble.
Saddlers: L Roberts; Devlin, Scarr, Guthrie, Leahy; Dobson, Osbourne (Cook 90’), Kinsella; Ismail (Ferrier 90’), Gordon, Blackett-Taylor.
Subs not used: Dunn, Edwards, Fitzwater, Laird, Oteh.
Barnsley: Walton; Cavare, Pinnock, Lindsay, Williams; Mowatt, McGeehan (Adeboyejo 76’); Brown, Bahre (Styles 68’), Thiam (Green 84’); Woodrow.
Subs not used: Greatorex, Fryers, Jackson, Williams.
Attendance: 4,969 (905 Barnsley supporters).