Huddersfield Town boosted their Premier League survival hopes with a gutsy goalless draw against champions Manchester City on Sunday.
City were looking to set a host of domestic records before capping their sensational season by lifting the Premier League trophy.
But with City's eyes perhaps on post-match celebrations, a dogged and resilient Huddersfield outfit seized the opportunity to secure an unlikely point in their battle against the drop.
The Terriers remain 16th in the Premier League, three points clear of the relegation with two games to play, as David Wagner's men inched closer to another season in the top flight.
Man City: Ederson (6), Walker (6), Stones (6), Otamendi (6), Delph (6), Fernandinho (6), De Bruyne (7), Sane (7), Silva (6), Sterling (7), Jesus (6).
Subs: Gundogan (6), Bernardo (6), Mendy (6).
Huddersfield: Lossl (7), Smith (6), Kongolo (7), Zanka (7), Schindler (7), Hadergjonaj (7), Lowe (7), Hogg (7), Mooy (8), Pritchard (8), Mounie (6).
Subs: Malone (6), Van La Parra (6), Depoitre (6).
Man of the Match: Aaron Mooy.
There was a carnival feel around the stadium ahead of kick-off, which culminated in City receiving a guard of honour from Huddersfield and members of City's title-winning squad from 1968.
But with just three games to secure their Premier League status, Huddersfield were intent on spoiling City's party, creating two clear openings inside 11 minutes.
Former City midfielder Aaron Mooy, making his first appearance at the Etihad, fizzed an effort just wide on 10 minutes before Alex Pritchard's clever free-kick released Florent Hadergjonaj, only for the defender to shoot straight at Ederson.
Huddersfield were almost made to pay for those misses three minutes later as City captain David Silva combined with Leroy Sane and found Kevin De Bruyne on edge of the area, but the Belgian whistled a shot wide of goal.
And it was not long until the Terriers were back on the attack, Pritchard's 25-yard drive drawing a save from Ederson before Mooy released the returning Chris Lowe on the overlap, and he blazed wide at the near post.
It was all hands to the pump for Huddersfield from there on. After Jonas Lossl had seen them into the interval on level terms by thwarted a rasping De Bruyne drive on 35 minutes, the visitors had to withstand wave after wave of City pressure.
John Stones made his first Premier League start since late January, replacing Aymeric Laporte, while David Silva returned to captain City in place of Ilkay Gundogan in the one other change from the side that beat West Ham.
David Wagner made two changes following Huddersfield’s defeat to Everton. Chris Lowe returned for his first Premier League appearance since January, while Tommy Smith was also recalled.
Christopher Schindler hooked the ball off the line the after Lossl spilled a Sane delivery, but having come up with the right answer time and time again this season, City could not find a way to unpick the Huddersfield lock.
Gabriel Jesus drifted a header onto the roof of the net with 10 minutes remaining, before substitutes Bernardo Silva and Benjamin Mendy went close with efforts, but focus soon turned to the trophy celebrations on a sun-drenched afternoon.
Stones made his first Premier League start since late Janaury and if the young defender thought he was in for a relaxing Sunday stroll, Huddersfield's high press would've come as a shock.
But Stones was calm under pressure and good in possession before City withdrew him in search of a winner. Guardiola admitted afterwards that the centre-back was substituted due to fatigue rather than any injury recurrence.
The marauding full-back tried his best to inject some urgency into a game that lacked intensity, and his delivery from the right caused problems to the Huddersfield defence especially in the first half.
Gareth Southgate will just hope the defender avoids injury in the final two games of the season having recently recovered from a knock.
Sterling entered the game fresh from his manager defending recent claims of him going over inside the box too easily, and the forward very nearly won his side a spot-kick in the opening period after a challenge from Terence Kongolo.
The in-form winger was close to another far-post tap-in in the first half - denied by a deflection off Mathias Jorgensen - and he worked tirelessly in search of an opener which never came.
- Manchester City are without a home league win against Huddersfield since November 1987 (D2 L2 since), though this was the first such meeting since 1999.
- Man City have only failed to score in two previous home Premier League games under Guardiola - vs Stoke in March 2017 and vs Man Utd in April 2017.
- This was only Pep's 25th 0-0 draw as a manager of Barcelona, Bayern Munich and Manchester City, in what was his 519th game.
- Huddersfield are the first side since Chelsea in April 2014 to stop the team at the top of the table from scoring at home in the Premier League (Liverpool 0-2 Chelsea).
- The Terriers are also the first promoted side to stop Manchester City scoring at the Etihad since Reading won 2-0 in February 2007.
- Huddersfield have failed to score in 20 of their 36 Premier League games this season. Only two sides have ever failed to score in more - Derby County (22 in 2007-08) and Leeds United (21 in 1996-97).
Pep Guardiola: "The Premier League is special, England is so tough. We did it. You win, you lose, but you always have to try to do what you believe."
David Wagner: "In football sometimes the impossible is possible. For sure before the game a clean sheet and getting a point looked impossible, but the players have done it and done it again."
Man of the Match - Aaron Mooy
The Australian had a point to prove on his return to Manchester City, and so nearly fired Huddersfield to an unlikely victory. His industrious performance saw him set up two chances in the first half, which should have yielded at least one goal, before running himself into the ground as the Terriers secured an unlikely point.
Live Premier League
Manchester City host Brighton in their final home on Wednesday before ending the season away at Southampton. Huddersfield's battle for survival sees them travel to Chelsea on Wednesday - live on Sky Sports Premier League - before hosting Arsenal on the final day in Arsene Wenger's last game.