Pep Guardiola’s side effectively settled the last-16 tie after just 23 minutes by racing into a 3-0 lead at Basel’s Sankt Jakob Park.
Their first three goals came in a devastating nine-minute spell thanks to a Gundogan header, a Bernardo Silva volley and a long-range Sergio Aguero strike.
Basel’s misery continued just after the break when Gundogan deftly added a fourth from outside the area and he could easily have finished with a hat-trick.
“To win 4-0 away in the last 16 is an amazing result, we are almost in the quarter-finals, but I am not saying we are already there, out of respect for Basel,” said Guardiola.
“We defended well and we were clinical – we had four chances and took them all.”
The scoreline gives the Swiss side little hope for the return leg at the Etihad on March 7.
As expected, Basel were starved of the ball as City enjoyed 69 percent possession and completed 754 of their 882 passes.
“For a Champions League game, we did ever so well,” said City captain Vincent Kompany after his first Champions League appearance this season.
“In these kinds of situations, it is about more than going through — if we have a draw at home that won’t give us a good feeling.”
Germany midfielder Gundogan gave Basel a masterclass in defensive midfield play, complementing his two-goal display by repeatedly snuffing out fledgling Swiss attacks.
The only black mark against him was a late yellow card after a clash with Basel’s Ivory Coast veteran midfielder Serey Die.
Basel head coach Raphael Wicky opted to play a back five when the host were defending, but the ploy only failed to keep City out for the first 14 minutes.
Having already had an earlier effort tipped over the bar, Gundogan got in front of Fabian Frei to power home his header when Kevin De Bruyne whipped in City’s fourth corner of the game.
The visitors’ second goal followed just four minutes later.
Bernardo Silva chested down Raheem Sterling’s deflected cross and fired past Basel goalkeeper Tomas Vaclik.
– Devastating Aguero –
With Basel’s defence buckling, Aguero, who terrorised Leicester City in the Premier League last Saturday with four goals in a 5-1 rout, hit his 29th goal of the season.
Basel defender Leo Lacroix stopped Fernandinho, but the ball fell into Aguero’s path who hit the bottom corner from outside the area on 23 minutes.
It was the Argentinian’s 14th goal in 11 games in 2018.
It was 3-0 at the break, but City could have ended the first half with two more goals as Sterling forced Vaclik into a desperate scramble and De Bruyne volleyed wide.
Basel made a bright start to the second half, but Gundogan left the Swiss with a mountain to climb when he hit the top right-hand corner on 53 minutes.
Sterling made way for Leroy Sane four minutes later on the left side of City’s attack.
The German winger is back just two weeks after an ankle injury, well ahead of the predicted six the club had forecasted which Guardiola admitted has surprised him.
With half an hour to go and the tie effectively won, Guardiola took off De Bruyne, saving the Belgian for Saturday’s league game at Wigan Athletic and the League Cup final against Arsenal on February 25.
With 15 minutes left, Gundogan was only denied the first hat-trick of his career by Vaclik’s determination.
Sane sprinted down the left wing and although he was tackled, Aguero scooped up the loose ball and set up the German, but Gundogan’s low shot was gathered at the second attempt.
At 4-0 down and the clock ticking, Basel finally started to test City.
Forward Dimitri Oberlin fired wide and winger Mohamed Elyounoussi shot at City goalkeeper Ederson as Basel chased a consolation goal in vain.
Download our app and read this and other great stories on the move. Available for Android and iOS.