Mason Greenwood levelled the score at 1-1 in the first half but Ole Gunnar Solskjaer's side were unable to book a place at Wembley.
"We didn't have the spark tonight -- but it's understandable," Solskjaer told BBC after the game. "This team have been fantastic in the last three or four months. We played every three days and been on a great run.
"It just caught up with us, all the games and travels. Thursday night in Milan was a big night and took a lot of out of us physically. We didn't have the extra zip, authority and confidence today.
The hosts did take the lead less than 10 minutes later when Iheanacho pounced on a poor back pass from Fred to skip round Henderson and score into an empty net.
United equalised six minutes before half time when Greenwood got on the end of a Paul Pogba cross following a smart dummy from Donny Van de Beek.
Leicester restored their lead after 52 minutes when Tielemans drove at the heart of the United defence and slotted the ball into the bottom corner from the edge of the box.
Leicester almost grabbed a third minutes later but Vardy dragged his shot wide when one-on-one with the goalkeeper.
"I'm obviously delighted. It was a great team performance," Leicester boss Brendan Rodgers told BBC. "Every aspect of the game was complete.
"We showed courage to play football against one of Europe's greatest teams. I'm so happy for the players. I thought we thoroghly deserved it.
"Kelechi has always contributed. Maybe his confidence was lower but he works so hard every day and always comes in and gives his all. You see his confidence now. He's at the top of his game."