Reading made it two wins out of two in the Championship as second half goals from Yakou Meite and Michael Olise gave them three points against nine-men Barnsley.
Barnsley were reduced to 10-men before the break, and then received their second red card of the game just moments after Meite had given the Royals the lead in the second half.
Olise then extended the lead in the 76th minute with a perfectly hit first time volley.
Reading are currently top of the league after two wins from their opening two matches in the Championship under their new boss.
Veljko Paunović made just one change from the side that came away from Derby County with a 2-0 win as Felipe Arauna replaced the injured Andy Yiadom at right-back.
Reading made a bright start as John Swift looked to bear down on goal early after he was slipped through by Michael Olise’s clever through ball, but he was denied by the offside flag in a very tight call.
After that early chance for the hosts, it was Barnsley who were in control for the next 20 minutes. They wasted a few set piece chances as they had three corners in quick succession.
Rafael was called into action for the first time after seven minutes as he flew to his right to claw out a header from Dominik Frieser who was left unmarked in the middle from Marcel Ritzmaier’s cross.
A nice passing move was then ended with a poorly executed shot from Luke Thomas who skewed his shot well wide of the target.
But Barnsley could could themselves lucky to still have 11 players on the pitch when Andersen scythed down Michael Olise in the 23rd minute.
The French midfielder nicked possession away from Andersen and was brought down on the half-way line, and was lucky to escape with just a yellow card with Olise looking to spring through on goal.
Andy Rinomhota made a crucial block in the box as he put his body in the line to get in the way of a powerful shot. The block allowed the Royals to counter attack as a long ball found Lucas Joao through on goal, but he was cynically pulled back by Michal Helik.
The referee showed no mercy this time to the away side as Helik was shown a red card to reduce Barnsley to 10 players in an eventful end to the first 45 minutes.
Josh Laurent picked up an early yellow card in the second half after a late tackle.
Reading had to stay patient against a Barnsley side, who despite having one less player, were still pressing and working hard to stay compact.
Paunović made his first change just before the hour as Laurent was replaced by Yakou Meite in an attacking change.
Meite when close to giving Reading the lead when he directed his header towards the bottom corner was kept out by a fine save from Walton who tipped behind for a corner.
But Meite made amends from the resulting corner as he was on hand to nod the ball in from close range to give the Royals the breakthrough.
Thigns went from bad to worse for Barnsley as they were reduced to nine men with their second red card of the game.
Mads Andersen was shown a second yellow card after the ball struck his arm as he slid to try and prevent a through ball to Lucas Joao, who would have been played through on goal.
The Royals then wrapped the game up in the 76th minute as Olise scored his first league goal for the club with a strike to remember.
The young midfielder hit a stunning strike on the volley from 25 yards out which flew into the bottom corner past the helpless keeper to seal the points.
George Puscas came on as a substitute for Lucas Joao with 10 minutes remaining in the match.
Ovie Ejaria came close to finding a third in stoppage time as he provided his trademark twists and turns to beat a defender before his low shot was parried behind for a corner.
The Royals face an away trip to Cardiff City next Saturday having made a perfect start to their league campaign.
Reading: Rafael, Araruna, Moore, Morrison, Richards, Rinomhota, Laurent, Olise, Swift, Ejaria, Joao
Subs: Southwood, McIntyre, Baldock, Meite, Aluko, Holmes, Puscas
Barnsley: Walton, Ludewig, Sollbauer, Helik, Andersen, Williams, Mowatt (c), Ritzmaier, Thomas, Frieser, Chaplin
Subs: Collins, Miller, Halme, Styles, Adeboyejo, Schmidt, Woodrow
Goals: Meite 67′, Olise 76′