Porto shocked Chelsea thanks to a stunning bicycle kick from substitute Mehdi Taremi, but it proved too late for the Dragons to overturn their quarter-final first-leg deficit.
Match in brief
Porto had the best opportunity of a cagey first half in Seville, with Jesús Corona blasting over from close range after giving Ben Chilwell the slip.
Christian Pulišić failed to cap a fine Chelsea move just after the restart, dragging his shot wide following Chilwell's low cross.
The US international could have won it late on for the Blues after being sent clear by Hakim Ziyech, but Agustín Marchesín was quickly off his line to snuff out the danger.
Chelsea's back line were largely untroubled and they looked to be heading for another clean sheet until Nanu picked out his fellow replacement with a teasing cross; Taremi sent a breathtaking overhead kick into the far corner to herald a frantic finale, but Porto could not find a second.
Man of the Match: Christian Pulišić (Chelsea)
"A very dynamic performance all over the pitch. He was a constant danger to Porto and also had a good defensive mentality."
Cosmin Contra, UEFA Technical Observer
Jon Phipps, Chelsea reporter
The hard work was done by Chelsea in the first leg last week, and they completed the job in professional style. The expected onslaught from Porto never really came, which made the Blues' job somewhat easier. Chelsea didn't create much themselves, but ultimately they didn't need to as they made it through to their first semi-final in seven years. This team is moving in the right direction – and in the UEFA Champions League that direction is the last four.
Carlos Machado, Porto reporter
Taremi’s wonder goal came too late, but Chelsea must know they came through a tough tie. The Blues faced a competitive and brave opponent, who arguably outplayed them for a majority of the 180 minutes. However, at this level you need to be clinical. Porto weren't, whereas Chelsea capitalised on their two best moments of the first leg.
Thomas Tuchel, Chelsea manager: "It was a tough, tough fight. From the sidelines it was a very intense game, a very fast game. It was very hard to play against them and to escape the pressure. We defended very well, we deserved a clean sheet, we had the better chances but we didn't get a goal. Overall we deserved to beat Porto over 180 minutes.”
Mason Mount, Chelsea forward: "It doesn't get better than that. We could have played better, but our performance was at the back of our minds and getting through to the semi-finals was at the forefront."
Sérgio Conceição, Porto coach: "It is not that we didn't have chances. We played a fantastic game. We did not let players of the highest level, such as those at Chelsea, create many chances. I am extremely proud of the group."
Mehdi Taremi, Porto goalscorer: "We played a great game, we showed that we are a great team, but unfortunately my goal wasn't enough. That is part of football."
• Chelsea have reached their eighth UEFA Champions League semi-final, more than any other English side.
• Prior to tonight, Chelsea had been behind for just four minutes in this season's competition.
• Porto skipper Pepe featured in his 104th UEFA Champions League match (group stage to final), overtaking Luís Figo to go second in the list of Portuguese appearance-makers.
• The Dragões registered their first win in eight UEFA Champions League meetings with English opposition.
Chelsea: Mendy; Azpilicueta, Thiago Silva, Rüdiger; James, Jorginho, Kanté, Chilwell; Mount (Ziyech 86), Havertz (Giroud 90), Pulišić
Porto: Marchesín; Manafá (Nanu 75), Mbemba, Pepe, Zaidu; Sérgio Oliveira (Fábio Vieira 84), Grujić (Taremi 63), Uribe; Corona (Luis Díaz 75), Marega (Evanilson 75), Otávio.
Chelsea aim to secure an FA Cup final place by overcoming Manchester City on Saturday, before seeking to keep pace with the Premier League's top four in a home game against Brighton (20 April). The UEFA Champions League semi-finals are scheduled for 27/28 April and 4/5 May.
Porto's thoughts must turn to Portuguese Liga basement side Nacional (17 April) before hosting Vitória SC (21 April) as they bid to overturn Sporting's six-point lead at the top.
Photo credit: UEFA