Doncaster romped to their biggest win of the season to complete a double over their South Yorkshire rivals, who had skipper Tony Vaughan sent off to add to their misery.
Rovers dominated from the start, playing some neat football in slippery conditions while Barnsley faded after showing early promise themselves.
Michael McIndoe missed a couple of early chances for the home side before John Doolan had a cracking shot deflected following a 15th minute free-kick.
But Doncaster went ahead a minute later and never looked back.
The goal was created by a superb lay-off from Neil Roberts who placed a cross from McIndoe straight into the path of Gregg Blundell, who rattled the ball into the back of the net.
Blundell made it 2-0 in the 31st minute when he hammered home in fine style with Roberts again the provider, after robbing careless defender Tony Kay of possession.
Vaughan's red card came eight minutes later for a reckless tackle from behind on James Coppinger, leaving Barnsley with a mountain to climb.
They did not trouble home keeper Andy Warrington until the 54th minute when he saved a snap shot from the hard working Michael Chopra.
The only threat to Doncaster came from a second-half snowstorm, which eventually cleared, and they piled on the agony for the Tykes when John Doolan fired home the third goal from 25 yards in the 69th minute.
Blundell was inches away from completing his hat-trick with a curling effort in the 76th minute, but Paul Green made no mistake when he rattled in the fourth from close range six minutes from time.