Andy Yiadom's strike in the last minute of normal time gave Reading a deserved point away at Swansea City, with the team coming back to Berkshire with a 1-1 draw on the day.
Bprja Baston put the hosts ahead after just three minutes in the first chance of the game, before Reading grew into proceedings and dominated the second half.
Their persistence paid off when Yiadom struck superbly into the bottom corner to give a tenacious Royals side a point on the day.
The team news saw eight changes for the Royals on Saturday afternoon from the midweek Carabao Cup tie at Wolves, as several players returned to the starting line-up.
Within three minutes, the game had barely settled down before the high-flying Swans had the lead. Andre Aye got forward on the right touchline, cutting back onto his left foot and crossing in for Baston to head into the far corner.
The hosts were in the ascendency from the off, and the goal only served to further the quality of their play in midfield. Reading were able to gradually gain a foothold against Steve Cooper's side, however, beginning to break up the fast-starting Swans' play.
Pressure began to ramp up from Reading as they forayed into the Swansea half. Lucas Boyé spun away from his marker towards the right-hand corner and put in a dangerous cross into the path of George Pușcaș, but Connor Roberts was able to put it behind.
The resulting corner was played low into the path of Jordan Obita, whose low ball into the area found Pușcaș unmarked eight yards out - but he cleared the crossbar with a first-time strike.
Swansea's attack looked potent whenever they gained space going forward. A neat one-touch passing exchange on the edge of the Reading box saw George Byers able to strike low. Rafael was at full stretch, but this effort went narrowly past the post.
Amidst the first half's action, Tyler Blackett appeared to be struggling as he went down on several occasions for treatment. He eventually couldn't continue, signalling a change of shape as Lucas João was introduced as Reading looked for an equaliser.
Swansea kept up their attacking pressure on the Royals, with José Gomes' side defending manfully as Michael Morrison lunged to block a shot from Byers, with Andy Yiadom managing to keep the lively Bersant Celina under wraps in the first half.
The game regressed into a midfield battle for a period as the half progressed, with Reading shutting down the Swans in their new shape and trying to break the hosts down. João was the recipient of a firm pass from the back from Liam Moore, working his way into space and testing Freddie Woodman from range, the Swansea stopper holding on with a low save to his left.
Up the other end, Swansea broke at pace when a Reading attack broke down. Ayew was slid through on goal with only Rafael to beat, but the Royals' 'keeper was quick off his line to make a smart save from the attacker.
Reading were quick to pounce on a Swansea mistake in midfield, as Andy Rinomhota capitalised to play to Yiadom on the right. His ball in was a low one to Pușcaș, whose first-time effort was taken over the bar by Mike van der Hoorn. The resulting corner came in, Moore got his head to it but couldn't keep it down.
The Royals finished the half with a flourish, but still found themselves a goal behind at the break.
Half time | Swansea City 1-0 Reading
Josh Barrett was introduced after the break for Reading in place of Boyé, who had received a yellow card in the first half alongside a talking-to after a subsequent tackle late on in the first 45.
The Royals started the second half with purpose. Swansea were hardly able to get out of their own half as the game opened up, with the Royals creating plenty of half-chances as the Swans' defence was tested in earnest.
João was unable to get a strike out of his feet from a Barrett cross, and Barrett tried an effort from range himself shortly afterwards that cleared Woodman's woodwork.
Reading were attacking with intensity, but the Swansea backline was proving to be tough to break down. A Swift corner into a dangerous area was plucked from the crowd by Woodman, following on from a well-worked passing move that saw a Barrett strike from inside the area turned away by Van der Hoorn.
Ovie Ejaria was a man on a mission in the second half, picking up in the middle of the Swansea half and dancing his way past three men into the area, testing Woodman at his near post with a left-footed drive.
João almost pounced to equalise as a short backpass from Joe Rodon was just about met by Woodman, with the outstretched leg of the Reading striker just half-a-yard short of prodding past the Swansea man.
The hosts' first chance of the half came on 75 minutes, such was Reading's dominance of proceedings. A Byers free-kick was swung into the head of Sam Surridge, but his effort went well over Rafael's crossbar.
Omar Richards was brought on for the final Reading change in the last 10 minutes at Swansea, with Obita making way as the Royals continued their search for an equaliser.
And on the stroke of 90 minutes, that's exactly what they did. The pressure finally told, as João's hold-up play allowed him to slip the ball through to the right of the box, where Yiadom was there to strike it sweetly first time into the far corner and send 900 travelling Royals into bedlam.
It was a point that Reading fully deserved on the day at the Liberty.
Full time | Swansea City 1-1 Reading
Swansea City: Woodman, Naughton, Roberts, Rodon, Van der Hoorn, Fulton (Carroll 82), Grimes, Byers, Celina (Garrick 76), Ayew, Baston (Surridge 76).
Subs: Mulder, Dyer, Wilmot, Dhanda.
Goals: Baston (3)
Reading: Rafael, Yiadom, Morrison, Moore (c), Blackett (João 20), Obita (Richards 81), Rinomhota, Swift, Ejaria, Boyé (Barrett 46), Pușcaș.
Subs: Walker, McIntyre, Olise, Pelé.
Goals: Yiadom (90)
Yellow: Boyé, Moore, Rinomhota
Referee: Mr K Stroud