Richards sets up derby semi-final
City, who have not won a major trophy since 1976, discovered before the match at Eastlands that a win would take them through to face Sir Alex Ferguson's side at Wembley on the weekend of 16/17 April. But for long periods it looked like they might be taken to a replay by the stubborn Championship side.
Having already taken two games to get past Notts County and Leicester, it was the last thing that City boss Roberto Mancini, who has already complained of his squad being stretched by a heavy schedule, would have wanted. But a late header from Richards spared City that worry and took them through to a first FA Cup semi final since they reached the final in 1981.
Reading make early progress
City may have been firm favourites to reach the last four but they were given some anxious early moments by Reading's Jobi McAnuff when the winger's dangerous cross was only just turned past his own post by Joleon Lescott. Another fine run from McAnuff was only halted by an impressive challenge from Vincent Kompany inside the area.
McAnuff also made enough space to clip over a cross that was headed over the bar by Noel Hunt. But City finally began to cause their own problems in the final third once they started to feed Carlos Tevez.
The Argentinian striker sparked panic in the Reading area with a run that was ended six yards out. After the visitors failed to clear, David Silva guided a pass through for Wright-Phillips, who was thwarted by Alex McCarthy, before the goalkeeper blocked the follow up from Silva.
Another fine throughball from Silva saw Wright-Phillips hit a drive into the side netting from a narrow angle. Serbian defender Aleksander Kolarov also curled a free kick just past the top corner. And Yaya Toure was denied by McCarthy after he was played through by yet another fine pass from Spain star Silva.
Silva went close himself after he knocked the ball over Ian Harte from a Wright-Phillips pass only to shoot straight at McCarthy.
City pressure persists
City almost got a lucky break at the start of the second period when Kolarov's corner was flicked towards his own goal by Brynjar Gunnarsson but Jay Tabb cleared off the line. Silva nearly created the breakthrough, when his run took him past Jem Karacan and his low cross was almost flicked in by Tevez. Tevez also scuffed a shot after a quick break from Wright-Phillips before Kolarov dragged an effort wide from distance.
Toure threatened with another burst away from Karacan but his powerful shot from a narrow angle was tipped away by McCarthy. McCarthy was called on once again when he tipped over the bar from Richards' downward header from Kolarov's corner. And after a swift break through Jimmy Kebe, Shane Long had the chance to put Reading ahead only to see his bobbling shot held by Joe Hart.
The tension was finally eased when Kolarov's corner was met by a powerful run by Richards, whose thumping header could not be kept out by McCarthy. Toure almost added a second with a drive from long range but City had to survive an anxious final few minutes to hold on for their place in the last four.