Fraizer Campbell headed a second-half double as Cardiff City claimed a stunning 3-2 win over Manchester City on Sunday.
The victory was Cardiff's first ever in the Premier League as Manuel Pellegrini's Manchester City suffered an early blow to their title ambitions in Wales.
Cardiff came from behind to secure the famous win at the Cardiff City Stadium, after Edin Dzeko fired Manchester City into the lead in the 52nd minute with an outstanding strike from distance.
They were ahead for just eight minutes, though, as Iceland international Aron Gunnarsson was on hand to net a close-range finish after Campbell saw his effort saved by Manchester City goalkeeper Joe Hart.
And the ever-threatening Campbell nodded in a corner at the far post with 11 minutes to play to fire Cardiff in front.
Manchester City did not learn from their lesson either, as Campbell headed home another corner in the 87th minute to cap a terrific performance.
Manchester City substitute Alvaro Negredo set up a nervy finish with a header, but Cardiff hung on for a sensational victory.
Both sides made one change, with Pellegrini replacing injured captain Vincent Kompany (groin) with Spaniard Javi Garcia in the heart of defence, while Cardiff recalled left-back Andrew Taylor from suspension in place of 18-year-old Declan John.
As expected, the home fans created a superb atmosphere as they celebrated their club's first home top-flight match in 51 years.
And they saw their side burst out of the blocks as Campbell had ambitious appeals for a penalty turned down in the first minute while an early free-kick from the impressive Peter Whittingham sailed just wide.
Hart then made a smart save to deny Steven Caulker from another Whittingham free-kick, although the offside flag was up in any case.
Cardiff, led by the tenacious Gary Medel, continued to get in the faces of their more-fancied opponents and rarely allowed them to settle on the ball.
There were fleeting signs of Manchester City's class – David Silva and Sergio Aguero combined excellently on the edge of the penalty area before the former saw his cross hacked clear for a corner, while Dzeko nodded wide following a neat Silva ball.
But Cardiff kept the pressure on, restricting their opponents to further half chances from Dzeko and Silva, before Campbell went close twice on the stroke of half-time.
Both came from balls over the top designed to exploit Pellegrini's side for pace, with Campbell poking wide from the initial opportunity, before Hart charged off his line to save following a poor header from Garcia that allowed the former Manchester United and Sunderland striker in.
Cardiff's failure to convert their chances was compounded seven minutes into the second half when Dzeko scored a terrific goal.
Dzeko won the ball after Aguero flicked a Yaya Toure ball into his path, and the Bosnia international beat Cardiff goalkeeper David Marshall at his near post with a superb 25-yard effort that appeared to receive a slight deflection.
It was an advantage that lasted just eight minutes, though, as Gunnarsson sent the home fans wild with his equaliser on the hour mark.
South Korean Kim Bo-Kyung was the creator, skipping past an array of challenges and into the penalty area before cutting back for Campbell.
And although Campbell's shot was saved by Hart, Gunnarsson followed in and was on hand to net the rebound inside the six-yard box.
Manchester City responded with a consistent spell of possession, but Toure, substitute Samir Nasri and Silva failed to put their efforts on target.
Pellegrini's men were stunned with 11 minutes to play as Campbell escaped the attention of Pablo Zabaleta following an excellent Whittingham corner and headed in from two yards.
Campbell then netted another late header, and although Negredo set up a tense finale, Cardiff did enough to win.
|10||F. Campbell||79' 87'|
|Coach: M. Mackay|
for C. Bellamy 83'
for F. Campbell 90+3'
for Bo-Kyung Kim 90'
|Gerrard: I may regret Real snubs|
|FA investigating Jerome racism allegation|
|Alcaraz takes over at Levante|
|Wenger backs Martinez to take his chance|
|Benatia: Media judged me too soon|
|CAF hits out at Platini|
|Mourinho calm over striker shortage|
|Kompany fumes at presence of CSKA fans|
|CONCACAF Champions League Review: Timbers eliminated|
|Jerome complains of racial abuse|
|Lanus 1 Cerro Porteno 1: Paraguayans reach quarters|
|A-League Preview: Another blow for Melbourne City ahead of derby|
|Luiz Adriano alleges racism|
|Yermakovich laments lack of quality, errors|
|Lopetegui pleased with important win|
|Luiz Adriano overjoyed with record-equalling haul|
|Blanc hails PSG´s fighting spirit|
|Melbourne City confirm Villa departure|
|Mixed feelings for Donis|
|Chelsea are ´serious contenders´ - Simundza|
|Valverde remaining positive|
|Silva slams penalty decision after Sporting loss|
|De Boer unhappy with early Ajax caution|
|League Two Review: Wycombe lose at Exeter, Burton win thriller|
|Championship Review: Derby go top, Birmingham struggles continue|
|Guardiola plays down dominant Bayern win|
|Schalke grateful for controversial penalty win|
|Rakitic takes heart from Barca performance|
|League One Review: Crewe run continues as Preston win again|
|Garcia accepts blame for Bayern mauling|
|UEFA Europa League Preview: Sevilla, Napoli hit the road|
|Drogba delight as Maribor pay the penalty|
|Schalke 4 Sporting Lisbon 3: Choupo-Moting heroics earn Di Matteo incredible win|
|BATE 0 Shakhtar Donetsk 7: Luiz Adriano the five-goal hero|
|APOEL 0 Paris Saint-Germain 1: Late Cavani strike seals victory|
|Barcelona 3 Ajax 1: Messi and Neymar help sink Dutch champions|
|Chelsea 6 Maribor 0: Drogba on target in comfortable success|
|Porto 2 Athletic Bilbao 1: Quaresma leaves it late to ensure maximum points|
|Roma 1 Bayern Munich 7: Guardiola´s men run riot in Rome|
|Slutsky delighted with CSKA spirit|
|Sloppy City frustrate Pellegrini|
|Lille v Everton: Martinez´s men look to continue recovery|
|Tottenham v Asteras Tripolis: Spurs begin big week with group leaders|
|Bale out of Clasico, confirms Ancelotti|
|Galatasaray the perfect test for Dortmund, says Klopp|
|CSKA Moscow 2 Manchester City 2: Visitors remain winless after spurning two-goal lead|
|Rodgers plays down Bale absence|
|Allegri urges Juventus to keep calm|
|Subotic wants confidence-boosting victory|
|Fernandes apologises for Taarabt-Redknapp spat|
|Lopes hopeful of return after mini-stroke|
|Gabi to miss out for Atletico|
|Inter v Saint-Etienne: Mazzarri´s men eye next step to last 32|
|Hasi warns of Arsenal threat|
|Verona hit with fine and partial stadium closure|
|Sunderland players offer fans refund after Southampton mauling|
|Schmidt wants Leverkusen reaction|
|Redknapp: Taarabt the worst professional I have ever come across|
|´I haven´t been up to my full potential´, admits Shaw|
|Flamini: Injuries no excuse for Arsenal form|
|Busquets to miss Ajax clash|
|Bale out of Anfield clash|
|Levante sack Mendilibar|
|Platini talks down Ronaldo´s Ballon d´Or chances|
|Messi and Ronaldo out of this world in UEFA Champions League space race|
|Bring on Bilbao - Lopetegui|
|J.League Preview: Petrovic positive despite Urawa form|
|Argentine Primera Division Review: Calleri inspires Boca|
|Guardiola: Garcia´s Roma reign ´wonderful´|
|Chilean Primera Division Review: Colo Colo claim key win|
|Mata had ´no relationship´ with Mourinho|
|Paraguayan Division Profesional Review: Libertad gain ground, Cerro Porteno held|
|Lovren demands better display|
|´Arrogant´ Van Gaal insists United can catch Chelsea|
|Sociedad loss a ´hammer blow´ - Arrasate|
|Genoa deserved a penalty - Gasperini|
|Passion kept me at Roma - De Rossi|
|Irvine ´bitterly disappointed´, questions Fellaini´s goal|
|Taarabt hits back at Redknapp claims|
|Genoa 1 Empoli 1: Tonelli hands visitors a point|
|Van Gaal blames United errors for draw|
|Real Sociedad 1 Getafe 2: Yoda brace stuns San Sebastian|
|West Brom 2 Manchester United 2: Blind rescues point for Van Gaal´s men|
|Russian Premier League Review: CSKA, Rubin claim easy victories|
|De Boer calls for confident Ajax|
|Robben hails Roma ahead of Champions League showdown|
|Turkish Super Lig Review: Besiktas win again, Sneijder settles derby|
|Monaco v Benfica: Jardim to face off with former rivals|
|Cordoba turn to Djukic|
|Anderlecht v Arsenal: Wenger on the defensive after domestic struggles|
|Ferrer fired by Cordoba|
|Olympiacos v Juventus: Allegri´s men face stern Greek test|
|PSG will not hide behind injuries, says Blanc|
|Podolski rubbishes Spurs rumours|
|Galatasaray among teams fined by UEFA|
|Stoke loan out Butland and Wilkinson|
|Atletico Madrid v Malmo: Turan warns Spanish champions|
|Di Matteo: Sporting clashes crucial|
|Donbass Arena heavily damaged by shelling|
|Toure getting back to his best - Pellegrini|
|Liverpool v Real Madrid: Rodgers marvels at Real quality|
|Starke injury adds to Bayern´s goalkeeper troubles|
|Bayer Leverkusen v Zenit: Bellarabi wants consistent focus|
|Birmingham part company with Clark|
|Roma not afraid of Bayern, insists Garcia|
|Ludogorets v Basel: Sousa after more of the same|
|Galatasaray v Borussia Dortmund: Reus calls for unity|
|Luis Enrique coy on Messi sub snub|
|Indian Super League Preview: Chennaiyin with chance to go top|
|Costa to miss Maribor clash|
|League Two Preview: Wilcox promises York improvement, Tranmere seek to end losing streak|
|League One Preview: Grayson excited by Preston form|
|Championship Preview: Birmingham begin life without Clark, Fulham out to continue revival|
|Ronaldo will retire at Real insists Ancelotti|
|Musa: City are weak at the back|
|El Shaarawy: I could have played better|
|Allardyce targets City scalp|
|Bale suffers hip injury|
|Atleti cannot rely on set-pieces, says Suarez|
|Martinez: Baines at another level|
|Juan: Inter must maintain hunger|
|Van Gaal: Three month comment was stupid|
|Bielsa proud to equal Marseille record|
|Redknapp: No one could do better than me|
|Manolas: I rejected Juve and Arsenal for Roma|
|Winning without Costa delights Mourinho|
|Mannone vows to repay fans|
|Balotelli ´doing his best´, insists Rodgers|
|Marseille feeling streak fatigue|
|Fournier hails substitutes´ influence|
|Copa Sudamericana Preview: River wary of Libertad|
|Colombian Primera A Review: Santa Fe stay top, Medellin lose|
|Valencia must bounce back - Nuno|
|Ecuadorian Primera A Review: Blanco inspires Barcelona|
|Liga del Futbol Profesional Boliviano Review: Wilstermann go top, Blooming slip up|
|MLS Review: Sounders deny Galaxy, Donovan|
|Venezuelan Primera Division Review: Caracas continue rise, Tachira stumble|
|Uruguayan Primera Division Review: Alonso´s brace inspires rampaging Nacional|
|Inter behind Mazzarri - Ausilio|
|Peruvian Primera Division Review: Alianza Lima leapfrog Union Comercio|
|Benitez happy with second half|
|Costa Rican Primera Division Review: Alajuelense jump clear, Saprissa win fifth straight|
|Liga MX Review: Leon continue resurgence|
|Brazilian Serie A Review: Cruzeiro, Sao Paulo bounce back|
|Hart: Aguero ´useless´ in training|