London Irish recorded a third straight win in the Aviva Premiership as they beat London Wasps 23-20, despite having Tomas O'Leary red carded.
Wasps were seeking to address a slide in form following a run of two defeats, while Irish headed into the game following a good win on the road at Saracens.
It didn't take the visitors long to take the lead, and ten points in the opening seven minutes provided the perfect start.
But the visitors were unable to cut loose and they were forced to withstand a home fightback in the second half.
Nic Rouse charged down a kick before finding Ian Humphreys, who had the pace to convert the chance into five points. James O'Connor added the conversion, and was on target with a penalty goal shortly after, before Joe Carlisle added his own three-pointer to get Wasps off the mark.
The game exploded into life once more midway through the first half. Strong work from O'Leary laid the platform for David Paice to extend the Exiles' lead, with O'Connor adding the extras, before Wasps hit back almost immediately when the TMO awarded a try to James Short.
The missed conversions meant it remained 8-17 as half-time approached, and though there were no further tries after the break, there were plenty of talking points as the game continued to hang in the balance.
Two penalty goals from Carlisle early in the second half narrowed the deficit for Wasps, and Irish were reduced to 14 men when O'Leary was sent for contact with the head.
But the Exiles regrouped and O'Connor's penalty on the hour established a six-point lead, before the scores were dramatically levelled by a brace of three pointers from Carlisle.
It set up a grandstand finish, and fortunately for the visitors Shane Geraghty was up for the occasion, as he slotted over a drop-goal seven minutes from the end to snatch victory for Irish.
Pens: Carlisle 5
For London Irish:
Tries: Humphreys, Paice
Cons: O'Connor 2
Pens: O'Connor 2
Red Card: O'Leary
Wasps: 15 Elliot Daly, 14 Will Helu, 13 Andrea Masi, 12 Chris Bell (c), 11 James Short, 10 Joe Carlisle, 9 Joe Simpson, 8 Sam Jones, 7 James Haskell, 6 Ashley Johnson, 5 Kearnan Myall, 4 Tom Palmer, 3 Jake Cooper-Woolley, 2 Carlo Festuccia, 1 Matt Mullan.
Replacements: 16 Tom Lindsay, 17 Simon McIntyre, 18 Phil Swainston, 19 Esteban Lozada, 20 Nathan Hughes, 21 Charlie Davies, 22 Tommy Bell, 23 Charlie Hayter.
London Irish: 15 James O'Connor, 14 Alex Lewington, 13 Eamonn Sheridan, 12 Shane Geraghty, 11 Andrew Fenby, 10 Ian Humphreys, 9 Tomás O'Leary, 8 Ofisa Treviranus, 7 Blair Cowan, 6 Kieran Low, 5 Nic Rouse, 4 George Skivington (c), 3 Jamie Hagan, 2 David Paice, 1 Matt Parr.
Replacements: 16 Jimmy Stevens, 17 John Yapp, 18 Leo Halavatau, 19 Jebb Sinclair, 20 Gerard Ellis, 21 Topsy Ojo, 22 Myles Dorrian, 23 Darren Allinson.
Referee: Tim Wigglesworth
Assistant referees: Gordon Goodliffe, Darren Gamage
Television match official: Rowan Kitt