Alexandre Lacazette, who started in an unfamiliar playmaker role in the absence of midfielders Clement Grenier and Yoann Gourcuff, opened the scoring in the 16th minute from Mehdi Zeffane's low cross.
Bafetimbi Gomis made it 2-0 from close range 11 minutes later before midfielder Xavier Thiago brought his side back into the match.
He reduced the deficit on 35 minutes following a corner kick, but Troyes never came close to grabbing an equaliser.
Lyon will face Ligue 1 leaders PSG on April 19 at the Stade de France where both sides will be making their fifth appearance in the final.
Lyon have lifted the trophy once in 2001 while PSG have won three League Cups.