Musa scored twice in five minutes to notch his first goals since October and settle a hard-fought third round tie at Goodison Park.
Claudio Ranieri's side fell behind to Romelu Lukaku's strike after the break, but Musa had come off the bench as a first half substitute and the Nigeria forward made the most of his opportunity.
He scored twice in five minutes to notch his first goals since October and settle a hard-fought third round tie at Goodison Park.
Musa's heroics ended Leicester's run of 10 away games without a win in all competitions and ensured the English champions avenged their Premier League defeat against Everton on Boxing Day.
England striker Jamie Vardy was missing for Leicester, but Ranieri gave a debut to Nigeria midfielder Wilfred Ndidi, who completed his £15 million ($18 million, 17 million euros) move from Genk this week.
The 20-year-old was keen to make a positive first impression as he tried his luck with a long-range effort that was deflected to safety by the massed Everton defence.
Demarai Gray's pace caused problems for Everton and the Leicester winger forced a decent save from Joel Robles in the early stages.
Foxes striker Leonardo Ulloa came off with an injury late in the first half, with Musa on in his place.
Chances were limited for Ronald Koeman's side as they struggled to find any rhythm and Belgian striker Lukaku wasted their best opportunity just before the interval.
Koeman sent on Gerard Deulofeu at half-time and the former Barcelona winger made a key contribution when Everton took the lead in the 63rd minute.
Surging down the wing, Deulofeu raced past Leicester defender Ben Chilwell and whipped over a cross that Lukaku tapped in from close-range.
But Everton's lead was short-lived as Musa equalised with a scrambled effort that went in off the post from Gray's cross three minutes later.
Suddenly, Leicester were clicking into gear and they scored again in the 71st minute when Danny Drinkwater's pass sent Musa clear to drive in his fourth goal of the season.
An excellent save from Kasper Schmeichel preserved Leicester's lead as the Danish keeper kept out a long-range strike from Kevin Mirallas in the closing moments.