Wasps had not lost at home in Aviva Premiership for 630 days.
Joe Marler goaded James Haskell into a yellow card as Harlequins squeezed past Wasps 24-21 at the Ricoh Arena.
Quins inflicted Wasps’ first Aviva Premiership loss in Coventry since a 26-16 defeat to Saracens in December 2015 in a bad-tempered affair.
Two late penalties for teenage fly-half Marcus Smith edged the visitors home, Wasps paying the price for yellow cards to both Haskell and Danny Cipriani.
British and Irish Lions and England team-mates Marler and Haskell clashed in an unsavoury first-half incident, that saw Wasps flanker Haskell sin-binned.
Haskell lost his cool and throttled Marler off the ball – but insisted that was because the Quins prop choked him and squirted him in the face with water.
Christian Wade and Tom Cruse struck tries for Wasps, but Marland Yarde and Charlie Walker responded for Quins.
But it was 18-year-old playmaker Smith who eventually booted the winning points as Wasps surrendered their 20-match Premiership winning streak at the Ricoh Arena.
Marler avoided punishment for clashing with Haskell but his latest controversy adds to his catalogue of previous issues.
The 27-year-old sought the help of sports psychologists after back-to-back bans for calling Wales prop Samson Lee “gypsy boy” and then kicking Grenoble’s Arnaud Heguy in the head in 2016.
Marler pulled out of England’s tour to Australia that summer, and has since cleaned up his act. But his latest antics could serve as a reminder of the thin line separating combative from careless.
Haskell certainly took exception to Marler appearing to tighten the strap of his scrum cap around his throat, and the water bottle incident caused the Wasps stalwart to loose his cool completely.
Smith and Danny Cipriani traded penalties in a frenetic opening, before Cruse bungled a clear try chance.
Wasps drew first try blood however, Daly, Marcus Watson, Le Roux and Wade all stacking the right wing to puncture Quins’ defence.
After some smart interplay it was Le Roux who sent Wade scuttling home for his 85th try in 135 Wasps appearances.
Haskell and Marler’s ugly tussle then truncated the half, and Wasps paid a quick price for losing their flank forward to the yellow card.
Smith slotted his second penalty, before Quins stole the lead through Yarde’s try.
Smith’s smart cross-field chip caught Wasps out, Mike Brown rose highest, tapped inside, and Yarde provided the finish.
Wasps should have scored again when Watson flew down the right – only for Yarde to pull off an acrobatic denial.
The England wing hurtled through the air as Watson propelled himself in for the finish, and somehow dislodged the ball as the Wasps flyer braced for the touchdown.
Wasps still sneaked a 13-11 lead into the break however, thanks to Cipriani’s second penalty of the day.
Quins wrestled back the lead through Walker’s smart score after the interval, Chris Robshaw inciting the attack before Joe Marchant sent the left wing into the corner.
Wasps levelled at 18-18 though thanks to Cruse’s try, that owed much to Kyle Sinckler’s yellow card.
The Quins prop was handed his marching orders for collapsing a Wasps maul, and from the resulting play the hosts exploited their extra man by by powering their hooker home.
Two penalties from teen fly-half Smith sealed the win however, after Wasps lost Cipriani to the sin-bin for a deliberate knock-on.