A tie that went every inch of the distance for the Royals ended triumphantly at the Cardiff City Stadium, as they defeated their hosts by virtue of a penalty shoot-out.
It was Josh Murphy who had opened the scoring for Cardiff in the first period, and Robert Glatzel’s second-half strike looked to have the Bluebirds well on their way to Round Five. But two fine team goals by Omar Richards and Andy Rinomhota took the game to an added 30.
Murphy capitalised on a bit of a mix-up early in extra-time, but Reading again showed their resilience to got back level in the late stages through Yakou Méïté – meaning that the tie would need penalties to decide the winner after the 120 minutes ended at 3-3.
From the spot, Cardiff were wasteful and Reading were flawless. Sub Sone Aluko was the one to finish the job; 4-1 the score from the shoot-out.
For the third meeting between the sides in the space of 11 days, both managers went strong with their selections. Five of the side which represented Reading in the Sky Bet Championship last Friday retained their places, as Michael Morrison led the team out of the tunnel as skipper. Amongst those recalled were experienced heads in Charlie Adam and Tyler Blackett.
John Swift was one of the senior selections, and was the first to get a shot away. Using Omar Richards’ overlapping run as a decoy, the midfield man swivelled outside the area and drove his strike beyond the far post.
And then Murphy cracked a strike at goal, after some smart play by Will Vaulks – it had pace and dip but Sam Walker watched it over the bar.
Neither goalkeeper was truly troubled in the early stages; Walker dealt well with a few low crosses, and then Blackett deflected an effort behind from Danny Ward as he collected a square ball in the area.
But the breakthrough came before the 20-minute mark, and it was something of a gift. Adam’s early ball forward was picked off by Murphy in the Royals half – the Reading defence scrambled to try and get in front of the effort, but the Bluebirds wide-man struck early with power and found the bottom corner.
Adam tried to add his name to the scoresheet; another clever spin by Swift in the Cardiff half and a smart first touch by Adam bought room to shoot, but cleared the bar with his effort.
Then a firm – but entirely fair – challenge by Pelé in the centre circle set off a Royals counter, and Chris Gunter’s cross from the right-hand byline found the forehead of Pușcaș. Neil Etheridge was well placed to collect.
The Royals were pushing to go in level before the break; Yakou Méïté was denied a goal which would certainly have been in the reckoning for goal of the season. After Swift was chopped down on the Reading left, Adam swung over a free-kick and the Ivorian improvised a volleyed effort with a scorpion kick. From a Cardiff perspective, it was a miraculous palm down low by Etheridge which maintained the advantage.
Half-time: Cardiff City 1-0 Reading
Manager Mark Bowen rung the changes at the break - on came Sone Aluko and Garath McCleary for the second period, replacing Adam and Pușcaș in a change of system.
And the combo combined early on as Aluko slotted a pass down the right flank; McCleary sized up his defenders and worked space for a teasing cross, which only just evaded the Royals attackers who were flooding into the area.
It had been a decent start to the second half for the Royals - but it was the Bluebirds who grabbed the second goal to open up a margin. It was a quick exchange of passes in midfield and then a well-weighted ball forward by Vaulks which allowed Glatzel to collect on the run, and he placed his shot past the exposed Walker.
Reading twice came close to pulling goals back, each time from outswinging corners by Swift. Firstly Morrison headed clean over, and secondly Méïté kept the ball alive, Aluko nodded back into the danger area, and it was Morrison again that was denied with a close-range block.
The Royals were attacking in waves in search of a way back into the tie and two great opportunities went begging within the space of minutes. Omar Richards teed up Aluko, who stepped into the area and brought an acrobatic save from Etheridge, and then it was Sol Bamba who denied McCleary from close range after Swift had cushioned Gunter's cross into his path.
And that pressure paid off midway through the second period when Richards gave the Royals a lifeline - and a lovely goal it was, well-worked and well-taken. Some delightful build-up play ended with Blackett whipping over a cross which Richards steamed onto with a perfect header at the near post - no change for Etheridge, and game on.
And ten minutes later, all square again and another wonderful team goal. Morrison was still up from a corner, and Swift picked him out with a deep cross - his nod back into the danger area caused havoc and Rinomhota raced onto the loose ball to smash in a volley.
Reading's two goalscorers were each denied as they tried to complete the turnaround. McCleary combined with Gunter down the right, cut infield, and slid through to Richards whose shot was blocked out. And then in similar circumstances to his goal, Rinomhota unleashed another ferocious volley which, on this occasion, Etheridge managed to punch clear.
Remarkably, neither the referee or his assistant saw any infringement when McCleary was bundled down as he entered the area. The Royals kept trying to play their way and soon it was Blackett released in the box, strafing onto a delightful low ball by Swift, but Etheridge kept it out.
The visitors were the ones pressing for the goal which would end the tie, but it wouldn't quite come. Instead, we were set to go the distance when the referee blew up at the end of four added minutes - another 30 to follow.
After 90 minutes: Cardiff City 2-2 Reading
Thomas Sang came on for the hosts in the interval before the break, and with his first involvement drew a save from Walker, who showed safe hands down low. Immediately at the other end, Aluko scuttled into space and forced Etheridge into a sprawling stop.
However Cardiff went back ahead early in extra time. It was a long ball forward which Gabriel Osho tried to nod back to Walker between the posts - slightly underhit, it invited Murphy to poke a toe onto it before the goalkeeper could get there, and trickled in via the inside of the post.
In the second period of extra-time, Aluko was still on the goal-hunt - firstly having a shot well-blocked by Aden Flint, and then applying too heavy a contact to a flick as McCleary sent in an inswinging cross.
Vaulks could have put the tie to bed; he picked up the scraps after a Murphy cross was half cleared, but an exocet of a strike was always rising. On the whole it was Reading doing the attacking and when Aluko was grounded by Joe Bennett, he chanced his arm from the free-kick but cleared the bar.
When it looked like the game might be up for Reading, up stepped Méïté with a blistering equaliser - three apiece. Jordan Obita, on as our fourth sub, whipped a cross towards the near post and in blasted Méïté with a terrific volley.
Glatzel squandered a late opportunity to win it for Cardiff from a deep deliver by Bennett - so the game would go the distance. Penalties to come.
After extra-time: Cardiff City 3-3 Reading
In front of the travelling Royals fans, McCleary scored the first kick while the PA system was still pumping out music. Flint was first up for Cardiff, but Walker was down to it well.
When Osho stepped up, he coolly slotted in to put Reading two up. And Vaulks hit his effort against the bar.
Obita smashed through Etheridge, meaning Marlon Pack would need to score to keep to Cardiff in the tie. Walker guessed right but the ball squeezed under the goalie.
So it was left to Aluko to finish off the tie. And so he did - firing in low to the goalkeeper's left, putting Reading into Round Five. Bring on Sheffield United!
Penalties: Reading win 4-1
Cardiff City: Etheridge, Flint, Bamba, Richards, Vaulks, Pack (c), Whyte (Sang 90), Bagan (Bennett 82), Murphy, Ward (Paterson 77), Glatzel.
Unused subs: Smithies, Morrison, Bowen, Mayembe.
Goals: Murphy (19, 93), Glatzel (54).
Yellow: Vaulks, Richards, Whyte, Murphy.
Reading: Walker, Gunter, Morrison (c), Blackett (Obita 97), Osho, Richards, Pelé (Rinomhota 63), Adam (McCleary HT), Swift, Méïté, Pușcaș (Aluko HT).
Unused subs: Andrésson, Baldock, Dorsett.
Goals: Richards (69), Rinomhota (79), Méïté (116).
Yellow: Osho, Richards, Rinomhota.
Referee: Mr G Ward