Nottingham Forest finish the day four points off the play-offs after a frantic second-half saw Reading take all three points.
Reading dominated the early stages of the first half and took the lead from a free kick. But after Forest equalised from the penalty area they came back into the game and looked more confident by half time.
It was a fast-paced second half that saw some frantic end-to-end football, a total of five goals and a penalty save by Lee Camp.
And just as it looked like Forest had done enough to get a point from the game a 90th minute own goal by Luke Chambers gave Reading the win.
It was a fast start to the game with both sides pushing forward from the outset.
Forest had their first chance three minutes in when they broke down the right and Garath McCleary did well to control the ball just inside the box. His shot was deflected out to Boyd but he was just offside.
Forest defended well as Reading pushed forward and Guy Moussi, returning from injury, showed what the side has been missing when he made a good clearance from inside the box.
Reading took the lead in the 19th minute from a free kick just outside the penalty area, to the left, after a touch by Chris Gunter brought Shane Long down. Ian Harte took it with confidence, sending the ball over the wall, over Lee Camp and straight into the back of the net.
And Reading continued to dominate play, with Forest struggling to get forward and their goalkeeperAlex McCarthy having nothing to do.
Reading threatened from another free kick, this time wide on the right. Harte whipped the ball in dangerously and Mathieu Manset's header was cleared by Moussi.
Forest made a quick break and Lewis McGugan had his team's first shot on target , but it was easily saved by McCarthy.
Forest equalised from the penalty spot in the 38th minute when McGugan turned and went down just inside the penalty area under the challenge of Mikele Leigertwood. Kris Boyd stepped up, determined to take it and looked confident as he sent McCarthy the wrong way, the ball going in past the keeper's feet as he dived to his left.
Forest threatened again when they made a break down the left and McCleary blasted the ball towards goal from 30 yards, forcing McCarthy to punch it away.
Forest were rejuvenated by the goal and looked dangerous when Chris Gunter twice broke with speed down the right.
Reading won a free kick in the last minute of the half, wide on the right and Camp did well to tip Harte's effort over the crossbar for a stoppage time corner.
Forest looked positive at the start of the second half, causing the Reading defence problems as they tried to find a way in.
Reading looked dangerous on the break and a good cross by Harte found Mayset who headed back across goal and just wide of the post for a goal kick.
And Gunter did well when he won the ball to prevent Reading from getting a shot in and made a break all the way down the pitch and into the penalty area before being stopped.
Forest went in front from another break when the ball was knocked in to the penalty area, back out to McGugan and back in to Robert Earnshaw who hammered the ball low into the far post.
But Reading were back on level terms two minutes later when Jem Karacan looped the ball over Camp from 18 yards out and it dropped just under the crossbar and into the back of the net.
The game kept up its pace and Forest came close again when McCleary made a good break but had his shot from 18 yards blocked. The ball came out to McGugan who also had his shot blocked, from the edge of the penalty area.
Reading were quick on the break with Leigertwoodwho sent Jimmy Kebe clear on goal and he was allowed far too much space but sent the ball wide of the post.
And Kebe threatened again but Camp was on hand to make the save, conceding a corner.
Reading were back in front from the corner after Khizanishvili turns to shoot and Camp parried the ball outbut it fell for Kebe who smashes it in the roof of the net from 6 yards.
Billy Davies reacted with a double substitution which saw Nathan Tyson come on for Moussi and Paul Konchesky replace Joel Lynch.
And Tyson soon had a chance to put Forest back on level terms after Boyd's shot was blocked and came back out to Tyson, but he missed the target.
Dele Adebola was Forest's final substitute, coming on for Boyd with 13 minutes remaining.
McCleary made another good break before seeing his shot blocked but it broke for Forest and Konchesky crossed the ball in to Luke Chambers but he headed wide.
With Forest threatening again there were calls from around the ground for a penalty when Adebola went down under the challenge of McAnuff.
But they did win a penalty a minute later after Gunter was brought down. McGugan sent McCarthy the wrong way and sent the ball low into the left corner to put Forest back on level terms.
But Reading were back in front yet again in the 90th minute after a quick free kick saw Karacan get away down the left. He drove the cross along the 6-yard line and it went in off&nbsp;Church.
And in stoppage Reading won a penalty for a hand ball by Gunter as he dived to try and block the ball but they were denied another goal when Long had his shot blocked by Camp.
Nottingham Forest: Camp(C), Gunter, Morgan, Chambers, Lynch(Konchesky 65min), McGugan, Majewski, Moussi(Tyson 65min), McCleary, Boyd (Adebola 77min), Earnshaw
Subs not used: Darlow(GK), Moloney, McGoldrick, Tudgay
Bookings: Earnshaw 57min
Scorers: Boyd pen 38min, Earnshaw 51min, McGugan 87min pen
Reading: McCarthy, Griffin, Karacan, Leigertwood, Long, McAnuff, Kebe, (Robson-Kanu 81min) Khizanishvili, Ingimarsson(C), Harte, Manset (Church 77min)
Subs not used: Tubb, Antonio, Howard, Pearce, Federici
Bookings: Kebe 62min, Griffin 87min
Scorers: Harte 19min, Karacan 54min, Kebe 62min, Church&nbsp; 90min
Referee: C L Pawson
Attendance: 22,495 Away: 1,428