|Wasps (13) 21|
|Tries: Wade, Cruse Con: Cipriani Pens: Cipriani 3|
|Harlequins (11) 24|
|Tries: Yarde, Walker Con: Smith Pens: Smith 4|
Wasps had England internationals James Haskell and Danny Cipriani sin-binned as they lost to Harlequins to end a run of 20 Premiership home wins in a row.
Christian Wade scored to put the hosts ahead but Haskell was yellow-carded after an altercation with Joe Marler.
Quins edged in front with the extra man when Mike Brown fed Marland Yarde for a try but Wasps led 13-11 at the break.
Charlie Walker went over for Quins, Tom Cruse replied and with the score 21-21 Marcus Smith scored a winning penalty.
It was the first time Dai Young's side have failed to win at the Ricoh Arena in the Premiership since December 2015, when they were beaten by Saracens, as they set a club record of consecutive home league victories.
For John Kingston's visitors it was a first away Premiership triumph since they won at Gloucester in March.
England and Lions flanker Haskell started on the bench on his return from finger surgery and had only been on the pitch for nine minutes when he was yellow-carded for grappling with his international team-mate Marler.
Smith kicked 14 of Quins' points with Cipriani, who was sent to the bin on 66 minutes for an intentional knock-on, earning 11 points with his boot for the home side who move up to second with a losing bonus point.
Harlequins prop Kyle Sinckler also had to sit out 10 minutes of the match for illegally bringing down a Wasps maul, but the hosts did not fully capitalise on having a man advantage.
Wasps director of rugby Dai Young:
"What you want from referees is consistency and I've got to be honest I thought he was consistent - he gave us nothing all game and that's all you can ask for really.
"I think if someone rips your hat off then squirts water in your face, what do you expect? I just thought it was very harsh on James Haskell.
"There comes a time when you've got to look at the guys that spark these things up, not somebody that's going to take exception to someone ripping their hat off and squirting water in their face."
Harlequins rugby director John Kingston:
"It was very important for us to be very physical, very confrontational, but also to make sure we were on the right side of the line. By the end, that just about happened.
"Rugby's a physical sport, that's why we love it and that's why they're such wonderful players.
"I was more disappointed that Joe (Marler) went off with a rib injury. We don't know the extent of it yet, but he's a brave lad and for him to leave the field it must have been hurting him."
Wasps: Le Roux; Wade, Daly, Lovobalavu, Watson; Cipriani, Simpson; Mullan, Cruse, Cooper-Woolley, Launchbury (capt), Symons, Rieder, Thompson, Hughes.
Replacements: Johnson, McIntyre, Moore, Rowlands, Haskell, Hampson, Miller, De Jongh.
Harlequins: Brown; Yarde, Marchant, Roberts, Walker; Smith, Care; Marler, Ward, Sinckler, Merrick, Horwill (capt), Robshaw, Clifford, Luamanu.
Replacements: Elia Elia, Lambert, Collier, Glynn, South, Lewis, Swiel, Sloan.