Erling Haaland showed exactly what he is capable of with some brilliant build-up play, ending with a 17-year-old Jude Bellingham bending the opener into the top corner.
Ederson got a strong hand to the strike but still saw the ball nestle into the top corner.
Foden's cross in the first few minutes of the second half was handled by Emre Can, yet another error from the German following on from the first leg, which Mahrez stepped up to take.
A heart-in-mouth moment for all Citizens. Mahrez, however, seemed to be the calmest player on the pitch as he whipped the ball past Marwin Hitz, putting Man City ahead on aggregate with an away goal to cancel out Borussia Dortmund's.
Foden signed the game off in style as the "Stockport Iniesta" picked the ball up outside the box from a corner, and rocketed home into Hitz's near post. The pure emotion on the youngster's face said it all. City, his boyhood club, were through.
Consistency is key
One player that has always been City's go-to in the Champions League this season, and pretty much every season, has been De Bruyne.
The Belgian superstar has been given Man of the Match every game he has played in the tournament so far this season, up until the quarterfinal second leg.
He was left out of both FC Porto matches, Olympiacos, Olympique deMarseille, and the Borussia Mönchengladbach first-leg. However, De Bruyne still stepped up when needed, recording two goals and four assists in City's Champions League charge.
It was İlkay Gündoğan who secured himself the Man of the Match award on this occasion, however. Although not surprising with the way the German's season has gone so far, Gündoğan has continued to go unappreciated by some Citizens.
For a box-to-box midfielder, three goals and an assist in nine games is an impressive return - not to mention his 12 goals and two assists in 24 games.
Gündoğan will be an extremely important asset in the final games of the season. Three games to win the Premier League. Champions League and FA Cup semifinals. A Carabao Cup final. He could be key if City are to pull off the quadruple.
Battle of the youngsters
Most of the talk around youngsters this season has been about Foden. The 20-year-old has tallied up 13 goals and nine assists in all competitions, recording a goal or assist every 124 minutes.
Stockport-born Foden was given huge boots to fill when club legend David Silva left. The Englishman has stepped up to the plate, and "grew up", Guardiola stated after his performances against Dortmund.
However, Foden had to share the spotlight with another youngster.
"He's so good at 17 years old, I cannot believe it," said Pep Guardiola after a tense quarterfinal second leg.
"He's a fantastic player. I saw one image when he didn't get the ball from the central defenders and how he shouted, how he demands the ball. At 17 years old, that means a lot."
Bellingham impressed in both legs, curling a beautiful effort home on Wednesday night to put City fans on the edge of their seats.
Most fans will say that the Birmingham man should have had another goal to his name, having the ball in the back of the net in the first leg. The goal, however, was ruled out under controversial circumstances.
Bellingham finally bagged his first Bundesliga goal against VfB Stuttgart last weekend. It was clear from his debut, assisting in a 3-0 win over Mönchengladbach, that the young man was an absolute steal from Birmingham City, and has the potential to be a world-class player.
What next for City?
City have booked their place in a semifinal of the Champions League for the first time under Guardiola, with Paris Saint Germain standing in between them and the final.
28 April and 4 May: The two dates standing between City and their first-ever Champions League final.
With Sergio Agüero missing the chance to take the lead from the penalty spot, it looked as though PSG were going to make one of their many chances count.
It was De Btuyne who stepped up to the occasion, however, sweeping a fine finish home to send City through to the semifinals. City could not reach the final that season though, bowing out of the competition at the hands of Real Madrid.
Could this be Man City's year?