Reading 1 Leicester City 2
The Royals took the lead in the tenth minute when captain Graeme Murty fed Nicky Forster, who spun away from Alan Maybury and hammered a shot beyond the reach of Ian Walker.
Rampant Reading looked set to double their lead two minutes later when Les Ferdinand's precise pass looked to have released Forster again, only for Nikos Dabizas to nick the ball off the striker's toe.
But Ferdinand had no excuse midway through the half when Forster laid a clever ball behind the defence and into the path of the former Leicester striker, who somehow failed to connect with the ball from just a matter of inches out.
The miss proved crucial as Leicester, virtually non-existent in the opening stages, finally came to life.
They equalised with their first real chance of the game, Gareth Williams exchanging passes with James Scowcroft and beating Marcus Hahnemann at the second attempt after the American keeper had blocked his initial effort.
David Connolly, a former Reading target before his move to West Ham two seasons ago, then saw a shot deflect just wide after Danny Tiatto had cleverly back-heeled the ball into his path, but the visitors had already done enough to reach the last 16.