Carlow didn't have it all their own way but their superior fitness and experience saw them through to a deserved though flattering victory.
It was their first ever championship win but being hot favourites clearly had a debilitating effect on the hosts, particularly in the first half, when they needed Sean Murphy's goal to lead 1-7 to 0-5.
"Carlow were nervous today," said manager John Meyler. "I could sense that within the dressing-room before the game. They were nervous because they hadn't won a championship match before and London were coming over with nothing to lose. So the pressure was on Carlow to perform."
Two frees by Gerard Hennelly before the interval kept the visitors in touch and Martin Duggan slotted a brace from play early in the second half.
In the end though, substitute Craig Doyle was the difference. The Erin's Own man came off the bench in the 22nd minute to set up Murphy for his goal before helping himself to three of his own.
The first arrived eight minutes into the second half and when points from Marty Kavanagh, Murphy and Doyle himself followed, the gap was 10 points.
Duggan and Luke Hands hit back with London goals to reduce the margin to four points, but Doyle responded with his second goal inside 60 seconds.
He added his third in the 70th minute and Kavanagh opted to point from an injury-time penalty to confirm Carlow's quarter-final date with Laois in a fortnight.
Carlow were reduced to 14 men late on when Jack Kavanagh got a second yellow card for a wild pull.
"I was happy with the performance," concluded Meyler. "
"In the first half we hit 10 wides but they were wides in front of the middle of the goal which we should have put over.
"We've things to work on for two weeks' time."
SCORERS – Carlow: C Doyle 3-2, M Kavanagh 0-7 (5fs, 1 pen), S Murphy 1-3,J Kavanagh 0-2, E Coady, S Kavanagh, R Coady 0-1. London: M Duggan 1-4, G Hennelly (3fs, 1 '65'), S Lambert (fs) 0-4 each, L Hands 1-0, D Reale 0-1.
CARLOW – F Foley 8; A Corcoran 6, E Nolan 8, HP O'Byrne 7; D Byrne 7, D English 7, J O'Hara 5; R Coady 6, J Kavanagh 7; S Murphy 8, S Kavanagh 7, E Coady 7; JM Nolan 6, M Kavanagh 6, P Coady 6. Subs: C Doyle 9 for JM Nolan (22), D Shaw 7 for O'Hara (42), P Shaw 6 for P Coady (55), A Gaule 6 for E Coady (70+1).
LONDON – D Russell 7; B Healy 6, B Costelloe 7, D Healy 7; D Maher 7, B Regan 7, J Walsh 6; H Vaughan 5, PJ Rowe 6; M Duggan 8, J Egan 7, T Dunne 6; G Hennelly 6, S Lambert 6, D Reale 7. Subs: J Maher 7 for Vaughan (24), S Frawley 6 for Egan (49), L Hands 7 for Hennelly (53), C McAlinden 6 for Maher (56).
REF – J Sexton (Cork)