City recovered from being two goals behind on aggregate to win their semi-final 4-3 overall with a 3-1 success at the Etihad Stadium, but their comeback hinged on a contentious goal.
With the score 1-1 on the night, City hit a second to level the tie through Kevin De Bruyne despite Raheem Sterling clearly running the ball out of play in the build-up.
The Toffees never recovered from that 70th-minute blow and substitute De Bruyne then set up Sergio Aguero for a decisive third City goal six minutes later.
The result put quadruple-chasing City through to next month's final against Liverpool but there was concern over De Bruyne's fitness after the Belgian was carried off late on with suspected medial ligament damage.
De Bruyne's goal was the main talking point of an enthralling the game with Everton boss Roberto Martinez questioning how the officials could have missed the ball crossing the byline.
Martinez said: "It was a clear decision, the ball is out of play. That second goal affected the outcome too much.
"You have to respect the referees, they have the toughest job in football, but certain decisions are clear-cut. When the ball is out of play in the modern game, you don't expect that to be missed.
"When it ends up with the second goal, you can imagine the major blow it has in our feelings, our performance and our chances to get through."
Everton led 2-1 from the first leg and increased their advantage as Ross Barkley finished off a swift counter-attack with an excellent finish in the 18th minute.
City rallied and pulled one back with a deflected Fernandinho strike and hit the woodwork twice through Aguero and David Silva before De Bruyne's disupted effort.
The momentum was all with the hosts after that and they secured victory with a fine glancing header from Aguero.