Barnsley saw head coach Daniel Stendel sent to the stands as their promotion charge was checked away at Shrewsbury.
The Reds’ coach was involved in a scuffle on the touchline with a member of the Shrews’ coaching set-up and was shown a red card by the referee Scott Oldham.
The home side had won just two of 14 games this season but they started well against the Tykes.
Just two minutes had elapsed when the hosts went a goal up.
Reds’ stopper Adam Davies failed to deal with a cross into the box and he parried the ball straight to Greg Docherty who tapped home.
Barnsley attempted to rally but were hit with a sucker punch midway through the half when Ollie Norburn’s effort deflected off Alex Mowatt and looped over the unfortunate Davies.
The visitors were then indebted to Davies as he kept out a shot from Fejiri Okenabirhie just before the interval.
That save looked crucial just after the restart when the Reds halved the deficit as Ethan Pinnock fired home from a knock-down in the box.
George Moncur saw a goalbound effort cleared off the line before Luke Waterfall restored the hosts’ two-goal advantage.
Shrewsbury: Coleman, Bolton, Waterfall, Beckles, Emmanuel, Docherty (Barnett 88) Grant, Haynes (Laurent 66), Norburn, Angol, Okenabirhie. Unused substitutes: Sadler, Arnold, John-Lewis, Gilliead, Amadi-Holloway
Barnsley: Davies, Lindsay, Cavare, Pinnock, B Williams, Potts (Moncur 61), Mowatt, Dougall (McGeehan 21), Bahre, Thiam (Hedges 73), Moore. Unused substitutes: Walton, Jackson, J Williams, Brown
Referee: S Oldham.