It finished 3-1 on the night, 6-6 on aggregate with Monaco’s three goals at the Etihad enough to see them through to the quarter-finals.
City were punished for being too attacking after fighting their way back into a tie and then failing to close it down when they needed to.
“We only played for 45 minutes,” said boss Pep Guardiola. “The first half we were a bit slow in everything, which is why we have conceded a lot of goals in Europe. In the second half we were there, created chances, missed a lot.
“It’s not about the defence and the goalkeeper. In the second half we won the second balls and how many chances did they create? Nothing. The gap between our first and second half performances was too big. It will help us a lot in the future and learn from that.
“I came here to win the Champions League? I tried. I tried. And I will try again. Playing like we have done this season, like in the second half, would have been enough.”
The second leg had been billed as a clash of two of the best attacking sides in Europe and it lived up it with another pulsating tie which swung to Monaco, then to City and then ultimately back to Monaco.
Kylian Mbappe put the Ligue 1 leaders ahead inside eight minutes before Fabinho doubled their advantage in a one-sided first-half.
City were much the better team in the second half and deservedly retook the advantage through Leroy Sane. However, they switched off from a free kick in the 77th minute for Tiemoue Bakayoko to head home and this time City couldn’t fight their way back into the tie.
It was Guardiola’s 100th game in Europe and the first time a side managed by the Spaniard failed to reach the Champions League last-four .
It was supposed to be a game of two attacking sides but in the opening 45 minutes, City failed to have a shot on or off-target in a first half where they were over-run.
Bernardo Mendy terrorised down the left wing, working brilliantly in tandem with Thomas Lemar.
Bakayoko and Fabinho held the midfield together with quality and intelligence while Bernardo Silva pressed and probed behind the front two.
Ahead of them was the jewel in the crown in Mbappe, who at just 18, already looks one of the best strikers around. His potential is frightening.
Such was his impact that it was hardly noticeable Radamel Falcao was ruled out of the match with a hip injury.
The Colombian striker terrorised John Stones in the first leg at the Etihad — scoring twice and winning a penalty — but wasn’t passed fit despite training with the first team ahead of the game.
This time Mbappe was tormentor in chief with his speed, touch and confidence allowing him to tear apart the City defence time and time again.
He signalled a warning in the seventh minute when Fernandinho was robbed in midfield but Willy Caballero reacted well to deflect his shot.
But City failed to clear the resulting corner, and Mbappe made no mistake when he found space in the box to turn in Bernardo Silva’s cross.
Ten minutes later, he whipped a fierce shot past Caballero but the goal was ruled out correctly for offside.
Monaco continued to press and it was no surprise when a second came on 29 minutes. This time Fabinho put away Mendy’s low cross.
But it was all change in the second half when Kevin de Bruyne dropped deeper to give more City control.
And they finally created a chance in the 56th minute when Raheem Sterling drifted beyond the back line but Andrea Raggi intercepted his pullback as Aguero threatened to score.
Aguero wasted a chance five minutes later when he clipped a close range shot over the bar after brilliant work from Leroy Sane.
In the 65th minute he missed a glorious chance when David Silva picked him out but Monaco keeper Danijel Subasic spread himself to save.
They finally pulled level in the 72nd minute when Subasic parried Sterling’s shot into the path of Sane, who fired into the roof of the net to put City back ahead in the tie.
But six minutes later, Bakayoko found space in the box to head in Lemar’s free-kick.
Subasic 6, Mendy 8, Jemerson 7, Raggi 6 (A Toure 69, 6), Sidibe 6, Fabinho 8, Bakayoko 8, Germain 7 (Dirar 91), B Silva 9, Lemar 8, Mbappe 9 (Moutinho 81).
Caballero 6, Sagna 5, Stones 6, Kolarov 5, Clichy 5 (Iheanacho 84), Fernandinho 5, D Silva 6, De Bruyne 6, Sterling 6, Aguero 6, Sane 7.
Gianluca Rocchi (Italy).