Belgium forward Lukaku struck with four minutes remaining of the first leg at the San Siro on the rebound from his own header to decide an absorbing encounter at the San Siro.
Simone Inzaghi’s side travel to Portugal next month to decide who will go through to the last eight thanks to Lukaku’s second goal in as many games in all competitions.
The 29-year-old, who has struggled with injury all season, struck his first league goal since August at the weekend and came off the bench to ensure Inter will have a lead to protect in the second leg as they seek a first quarter-final tie since 2011.
Lukaku stuck as Sergio Conceicao’s Porto were playing the final portion of the match with 10 men after key midfielder Otavio, in his first appearance since the start of February, was sent off in the 78th minute for two bookable offences.
The Portuguese champions have been a bogey side to Italian teams in recent seasons but will have to turn the aggregate score around if they are to add to the series of Serie A scalps which include Juventus and Roma.
Inter should have been ahead in the 13th minute when Federico Dimarco found Lautaro Martinez with a deep cross, but the Argentina striker sent his header way of the bar.
Five minutes later Hakan Calhanoglu forced a fantastic save from Diogo Costa, the Turkey international playing a one-two from his own corner and whipping a beautifully struck effort shot which nearly went in at the near post.
However it was Porto who wasted the best chance of a niggly half in the 37th minute after a lovely team move, their first decent attack of the match.
From Otavio’s pass Mehdi Taremi played the perfect layoff to Marko Grujic, who should have done better in front of Andre Onana before Wenderson Galeno headed wide with the goal gaping.
Costa then made sure that the teams would go into the break level with another superb stop, this time reacting brilliantly to keep out Alessandro Bastoni’s flicked header from Dimarco’s inswinging free-kick.
Barella flicked just wide before Porto missed two more great chances to take the lead.
In the 54th minute, Terami shot weakly at Onana at the end of a lightning break led by his striker partner Pepe, and then three minutes later Onana twice save Inter’s bacon in the space of seconds.
Milan Skriniar did well to block Zaidu’s low shot before former Cameroon goalkeeper Onana grasped at the Porto left-back’s second effort and then recovered in time to stop what looked like a certain Taremi goal.
Lukaku almost immediately replaced the disappointing Edin Dzeko and in he 72nd minute the Belgium striker almost laid on the opener for Martinez, who just couldn’t quite meet an inviting low cross as he slid into the six-yard box.
Just as the match looked destined for a goalless draw, Lukaku headed Nicolo Barella’s cross against the post before slotting in the winner on the rebound.
For all the latest Sports News Click Here
For the latest news and updates, follow us on Google News.