Andros Townsend smashed home a sublime 30-yard volley as Crystal Palace stunned Manchester City to leave Liverpool four points clear at the top of the Premier League.
Palace caused the biggest shock of the campaign to date by claiming their first win at City for exactly 28 years to end the defending champions' 100% home record in the top flight this season.
City's form at Etihad Stadium this season – they had scored an average of three goals a game in nine successive league victories before this match – had made it a fortress, but its walls came crumbling down in spectacular fashion.
The game appeared to be following a familiar script when Ilkay Gundogan ghosted into the box to head City into the lead from Fabian Delph's cross, but the events of the next eight minutes left the home fans in stunned silence.
First, Jeffrey Schlupp equalised with a fizzing angled drive into the bottom corner after meeting James McArthur's pass on the edge of the area.
Then Townsend gave the visitors the lead with a contender for goal of the season, a fabulous volley after Bernardo Silva had half-cleared a free-kick.
City boss Pep Guardiola – who had only lost two other league games here since he took charge in the summer of 2016 – sent on club record goalscorer Sergio Aguero after the break.
The home fans, and everyone else present, anticipated a fightback but Palace quickly scored again – this time from the spot. Townsend headed Aaron Wan-Bissaka's cross against the post, Kyle Walker fouled Max Meyer as he tried to clear and Luka Milivojevic sent Ederson the wrong way with his penalty.
City sent Kevin de Bruyne, so often a hero of last season's procession to the title, into the rain to attempt a rescue mission but this was beyond even him.
The Belgian did reduce the deficit before the end when his cross looped into the net, and Gabriel Jesus headed another of his deliveries over, but otherwise Palace stood firm for a deserved victory.