The hosts netted twice in the final eight minutes of a first half then, after Cauley Woodrow pulled one back with a spectacular strike, Pompey made it 3-1 three minutes later then added another.
Conor Chaplin pulled one back against his former club in injury-time but it was a third loss in a week for the Reds, who delivered a very disappointing display.
Gerhard Struber made four changes from the team that lost 3-0 at home to Preston North End on Tuesday. Captain Alex Mowatt dropped to the bench along with Kenny Dougall, Kilian Ludewig and Sami Radlinger. Into the team came new signing Michael Sollbauer, the fit-again Clarke Oduor and Cauley Woodrow – who took over as captain – as well as Brad Collins.
The hosts had the first shot when Tom Naylor fired wide of bottom right corner from 25 yards then Marcel Ritzmaier blazed over from the edge of the box after meeting a Jacob Brown pull-back.
Barnsley goalkeeper Brad Collins then almost conceded a comical opener as his attempted clearance was blocked by John Marquis and trickled inches wide of the bottom left corner with the net unguarded. Collins then easily collected a long-range shot by Ronan Curtis which was the match’s first effort on target.
The hosts took the lead in the 37th minute when slack defending allowed Andy Cannon to pass from the left wing to Ben Close whose shot from the just outside the box found the bottom right corner.
Collins then tipped over a shot in the box by Curtis who beat Jordan Williams very easily. But, from the resulting corner, Curtis headed down and Marquis tapped in on the line to double Portsmouth’s lead seconds before the half-time whistle.
Mowatt came on at half-time for Luke Thomas and, although the Reds looked more dangerous in the second half, the hosts ran away with the win.
Marquis almost got a second soon after the break when he met a Curtis pass eight yards out but could not get a strong connection on the shot which rolled to Collins.
The visitors pulled one back with their first shot on target, and it was a spectacular one as Woodrow’s 30-yard strike flew into the net for his tenth goal of the season on the hour-mark.
Brown should have made it 2-2 but, after excellent work on the left by Conor Chaplin, he shot wide of the left post from eight yards out. A minute later it was 3-1 as Curtis beat Sollbauer to a long ball and tucked the ball past Collins.
Chaplin then forced the home goalkeeper Alex Bass into a save from a tight angle. Portsmouth’s fourth goal was a header from a corner by Christian Burgess who nodded into the empty net after the ball was totally missed by Collins coming off his line.
Substitute Marcus Harness was then put clean through on goal by Curtis but Collins made an impressive one-on-one save. Chaplin replied in injury-time with an eight-yard finish into an almost empty net after goalkeeper Alex Bass brilliantly saved Brown’s effort from a Mowatt cross. Woodrow forced another save from long-range by Bass but Barnsley lost 4-2.
Portsmouth (4-2-3-1): Bass; Bolton, Burgess, Raggett, Seddon; Naylor, Close; Williams (Harness 77mins) Cannon (Evans 90), Curtis; Marquis (Harrison 90+2). Unused: MacGilllivray, Hawkins, Haunstrup, Whatmough. Goals: Close 37, Marquis 45, Curtis 62, Burgess 76.
Barnsley (4-4-2 diamond): Collins, J Williams, Andersen, Sollbauer, Oduor; Halme 6 (Dougall 69mins), Ritzmaier, Thomas 5 (Mowatt HT), Woodrow; Chaplin, Brown Subs: Radlinger, B Williams, Ludewig, Schmidt, Styles. Goals: Woodrow 60, Chaplin 90+2.
-
-
15:03pm
-
15:05pm
-
15:05pm
-
15:08pm
-
15:09pm
-
15:11pm
-
15:12pm
-
15:14pm
-
15:17pm
-
15:18pm
-
15:21pm
-
15:22pm
-
15:24pm
-
15:24pm
-
15:26pm
-
15:26pm
-
15:27pm
-
15:30pm
-
15:31pm
-
15:34pm
-
15:37pmGOAL!
-
15:38pm
-
15:39pm
-
15:44pm
-
15:46pm
-
15:46pmGOAL!
-
15:47pm
-
16:01pm
-
16:02pm
-
16:05pm
-
16:06pm
-
16:10pm
-
16:14pm
-
16:16pmGOAL!
-
16:18pm
-
16:18pm
-
16:18pmGOAL!
-
16:20pm
-
16:22pm
-
16:25pm
-
16:30pm
-
16:30pm
-
16:32pmGOAL!
-
16:34pm
-
16:34pm
-
16:34pm
-
16:35pm
-
16:38pm
-
16:42pm
-
16:42pm
-
16:46pm
-
16:46pm
-
16:46pm
-
16:47pmGOAL!
-
16:48pm
-
16:48pm
-
16:49pm
-
16:50pm