The Citizens got off to a perfect start at St James' Park when Bernardo Silva scored a cheeky backheel to put the treble-winners ahead.
Though they did see goalkeeper Ederson forced off through injury to add to their mini-crisis.
While many teams would capitulate going behind against City, Eddie Howe's side showed great spirit to get back into the game almost immediately.
Aleksander Isak clawed the game back to 1-1 after latching onto a wonderful pass from Bruno Guimarares.
The Swedish star then rounded the defender before curling an effort past Stefan Ortega and into the net.
READ MORE ON PEP GUARDIOLA
Pep Guardiola told he made transfer mistake as Cole Palmer inspires Chelsea again
Chelsea star Palmer got ruthless response from Guardiola after Man City transfer plea
The Newcastle fans were delighted, but it was nothing compared to how they felt two minutes later.
Anthony Gordon, arguably the club's best player in recent weeks, broke free down the left before cutting inside and bending a whipped effort past Ortega to make it 2-1.
The City players were stunned, as was Guardiola who looked shocked at what he'd just seen.
The second period saw Newcastle maintain their lead for long spells, at least until Kevin De Bruyne came on.
Most read in Football
'Show the f****** flag' - Man City fans rage as bizarre rule sees key star injured
Bolton vs Cheltenham abandoned due to medical emergency
Reading match abandoned as fans storm pitch and Port Vale supporters join protest
Chelsea fans fume at 'shocking' Boehly publicity stunt as actors brush teeth in stands
The Belgian star took just four minutes to draw the game level on his Premier League comeback for City.
But De Bruyne wasn't done yet as he offered a late assist for Oscar Bobb who secured a 3-2 win for Guardiola's side.
That result means that Man City leapfrog Aston Villa and move into second place in the Premier League table.