In its first meeting with Ukrainian opposition, Leicester had to withstand a sharp start from its Group G rival at the King Power Stadium on Friday (AEDT).
However, Maddison's 29th-minute effort put Brendan Rodgers' side ahead, with Barnes – who had played a crucial role in the opener – doubling the lead on the stroke of half-time.
Wesley Fofana missed a chance to make matters even more comfortable, though the points were wrapped up when Iheanacho slotted in a low finish.
Vladyslav Kabaev should have capped a dominant start for Zorya with an opener in the 22nd minute, only for the forward to fail to beat Kasper Schmeichel from close range.
Maddison saw a goal rightly disallowed for offside from the counter-attacking move that followed, but he broke the deadlock moments later.
Barnes' wonderful strike hit the post but Iheanacho managed to turn the rebound into the path of Maddison, who prodded into an empty net.
Leicester got lucky when Dmitriy Ivanisenya volleyed wide from Schmeichel's poor clearance, yet they had their second when Barnes raced onto Iheanacho's flick and lifted a sublime finish over Mykyta Shevchenko.
Fofana headed just wide 10 minutes after the restart, with Maddison then curling over from the egde of the penalty area.
A third for the host did eventually arrive in the 67th minute, Iheanacho – who became the first Nigerian to assist two goals in a single UEFA Europa League game – rounding off a fine individual display with a brilliant finish to add further gloss to the scoreline.