It was a frustrating day for Barnsley as Reading substitute Mathieu Manset stole all three points for the away side. Efforts from Devaney and Gray could have made it a different story but it just wasn't Barnsley's day.
Three changes for the Reds saw Andy Gray back in for the injured Danny Haynes, while Jim O'Brien and Hugo Colace came in for Jacob Mellis and Paul McShane - Nathan Doyle slotted in the centre of defence alongside Jason Shackell.
Shane Long had the first attempt on goal for the away side three minutes in after a great delivery from Jay Tabb on the left-hand side, but Reading's top scorer headed wide from close range.
Church was then denied a minute later as he was in on goal by a tremendous save from Luke Steele.
The Reds came to life with five minutes on the watch as Trippier bombed down the right flank - the Man City loanee's delightful cross found Harewood six yards out but the big striker headed straight at McCarthy.
Both sides were showing their quality but it was Barnsley who pressed on 11 minutes with Harewood's knock-down almost finding Gray in the penalty area after some neat football from the Tykes.
Another good move from the home side saw O'Brien flick an effort wide after a great cross from McEveley - Barnsley were playing some neat football.
The away side charged forward on a counter-attack with 18 minutes gone, but Karacan wasted a great opportunity to deliver for Long in the area.
On 21 minutes Church drilled a cross right across the face of goal from an acute angle, it was begging to be turned home.
Harewood was looking lively in attack for the Reds, putting the Royals under pressure by using his strength well.
Shane Long beat the offside trap before delivering for Kebe, but the winger's header at goal was tame enough for Steele to gather with ease on 29 minutes.
Arismendi found himself in the referee's notebook half-an-hour in for pulling back the advancing Brian Howard.
In the 35th minute, Marlon Harewood showed his class to over-head kick a delivery into the area and find Andy Gray - the former Charlton man's header went back across the face of goal, forcing McCarthy to pull off a great stop away to his right.
At the other end, Kebe flashed a shot wide from 20-yards after the away side sprung a counter-attack.
One minute of added time came at the end of the half, with neither side managing to find the target.
Glorious sunshine welcomed the two sides back out for the second half at Oakwell. Martin Devaney replaced Jay McEveley at the break.
Former&nbsp;Oakwell favourite Brian Howard&nbsp;had the first attempt of the second period from 25 yards, Luke Steele was equal to his effort despite being blinded by the sun. Steele was at his best again on 49 minutes as he denied Long from only a few yards out. The Royals had started strongly after the break.
Hugo Colace was the second name in Steve Tanner's book, the Argentine brought down Howard 25-yards out as the midfielder charged forward. The resulting free-kick was sent over Steele's crossbar by former Leeds man, Ian Harte.
O'Brien finally got the Reds going on 56 minutes although his cross after good work down the right could only find the Royals' keeper. Only a minute later and Khizanishvili saw his header saved by Steele.
It should have been 1-0 to the Reds two minutes before the hour-mark as Devaney took advantage of some confusion in the Reading defence. The winger was unlucky as his effort hit the post and out for a goal-kick.
Jacob Butterfield joined the action with 25 minutes&nbsp;to go - Hugo Colace being replaced. Immediately after his introduction, Butterfield found Devaney to cross for Harewood, although his over-head kick went wide.
An unimpressed Simon Church was replaced by Mathieu Manset for the Royals' first change of the match on 66 minutes.
Reading took the lead on 71 minutes as Nathan Doyle was robbed by Long - the midfielder was looking to run the ball out of play, but Reading's top-scorer pulled it back for the substitute Manset, who beat Steele from seven yards.
Harewood suddenly found some space in the box after a great turn - the Blackpool loanee forced McCarthy into a smart save from 15-yards.
Former Red Brian Howard was replaced with 12 to go by Michael Antonio - Howard received a mixed but ultimately warm reception from the home fans after a good game for the Royals. A minute later, Andy Gray was replaced by yougster, Steven Bennett.
Reading were looking comfortable with eight minutes to go, although the Reds were by no means out of it. Harte bent in another free-kick but it failed to really trouble Steele before O'Brien flashed high and wide at the other end.
Manset struck a fierce effort towards Steele's near post from 25 yards but the Barnsley keeper made a tremendous stop in turning it round the post.
The Reds almost levelled but for a great save from McCarthy on 86 minutes. Bennett scuffed his effort into the path of Devaney whose shot was well saved by the Reading stopper.
Three minutes of added time were indicated by the fourth official. Long was booked for kicking the ball away with only a minute remaining.
Steve Tanner ended the match with Barnsley having put in a great shift at Oakwell - they were just lacking that cutting edge in the final third.
BARNSLEY: Steele, Shackell, Trippier, McEveley (Devaney 45), Doyle, Arismendi, Harewood, Hill, Gray (Bennett 79), Colace (Butterfield 65), O'Brien
Subs not used: Preece, Lovre, O'Connor, Fearnehough.
READING: McCarthy, Karacan, Gunnarsson, Tabb, Long, Kebe, Khizanishvili, Ingimarsson, Church (Manset 66), Howard (Antonio 78), Harte
Subs not used: Taylor, Pearce, Morrison, Andersen, Obita.
Referee: S Tanner
Assistant Referees: R J Jones &amp; M Salisbury
Fourth Official: R P Newman
Attendance: 10,284 (374 away supporters)