Manchester United punished the two costly mistakes that City's keeper Ederson made.
The Red Devils opened the scoreline in the 30th minute after Anthony Martial volleyed the ball past Ederson. In that 182nd Manchester derby, Ederson made a terrible mistake because he should have saved that volley which came from Bruno Fernandes' free-kick.
In the stoppage time Edison made his second huge mistake after he mistimed his pass and that gave Scott McTominay the opportunity to place the ball right into the net.
Manchester City dominated in possession in the derby but they were not enough creative in midfield and the lack of chances to create something dangerous for United was clear.
Raheem Sterling tried to open the scoreline in the 10th minute of the first half, but De Gea was careful and after a full stretch he made the save.
After the break Sergio Aguero equalized the scoreline after a great finisher past De Gea, but the goal was ruled out by VAR for offside.
City dominated in possession, but United were very organized in defense and they didn't let them near the danger area. Aaron Wan-Bissaka was at the top of his game, he was concentrated and made some crucial interceptions that saved United.
However, despite City were more dominant United took the lead after a chip free kick from Fernandes and a volley from Martial.
Just three minutes before half time United thought they have a penalty because Fred fell in the penalty box, but the referee Mike Dean said there's no penalty and gave him a yellow card for diving.
Ederson almost gifted another goal in the 48th minute after he allowed a back pass to squirm towards his own goal line, but luckily for him he was able to clear the ball before Martial got to it.
Guardiola made his two of three substitutions bringing in Gabriel Jesus and Riyad Mahrez. Jesus came in to replace Aguero who obviously had problems and later we saw him with ice - pack around his hamstring.
After coming in Riyad Mahrez created a great chance, but Raheem Sterling was just not able to place the ball past De Gea.
Right in the stoppage time McTominay brilliantly latched the ball right into Ederson's net after a poor pass from City's keeper.
However, things are getting really interesting for the Champions League spot as United climb to the fifth place with just three points behind Chelsea.