The 23-year-old has become a regular under Brendan Rodgers in recent seasons.
The 23-year-old attacker enjoyed a stellar 2020-21 campaign, scoring 13 times in all competitions and making his England debut before a knee injury cut short his season.
Barnes has established himself as a regular under Brendan Rodgers during the last two terms and is excited for what is to come at the King Power Stadium.
“I’ve been here for so many years now, it feels like home,” he said.
“For me, it was a no-brainer. Of course, I wanted to extend my stay here.
“It’s been something that’s been going on in the background and to sign now is great. It’s right at the start of a new season as well, which I know everyone is excited about.”
While Barnes missed Leicester’s FA Cup final win in May, he had scored in the third-round win over Stoke and also shone in their Community Shield success over Manchester City at the start of August.
The 23-year-old made his Foxes debut midway through the 2016-17 campaign, but spent the majority of the next few years on loan at MK Dons, Barnsley and then West Brom.
It was at the Hawthorns where his goalscoring capabilities come to the fore and it convinced the Leicester hierarchy to give the wide-man a five-year deal in the summer of 2019.