A 35th-minute Ferjani Sassi penalty had cancelled out Kane's 11th-minute opener.
After the break, England, who had wasted several good chances in the first half, struggled to break down the deep defending African side.
But from a Kieran Trippier corner, a glancing header from Harry Maguire found Kane at the back post and he nodded home to give England a winning start.
Earlier, a stunning volley from Dries Mertens and a Romelu Lukaku double broke the resistance of a brave Panama side on their World Cup debut as Belgium cruised to a 3-0 win.
Mertens hammered home a superb volley two minutes into the second half, sending the ball arcing over Jaime Penedo after Panama struggled to clear a cross.
Lukaku's hard work up front was rewarded when he headed home Kevin De Bruyne's brilliant pass off the outside off his foot to make it 2-0 in the 69th minute and the big striker latched on to an Eden Hazard pass to complete the scoring with a neat finish.
In the first game of the day, Sweden won an opening World Cup game for the first time since 1958 with a narrow 1-0 victory over South Korea.
After dominating the game but missing a string of chances, the Swedes won a 65th-minute penalty when Kim Min-woo brought down Viktor Claesson in the box. Salvadoran referee Joel Aguilar initially waved the Swedes away, before being called to consult the Video Assistant Referee system.
In the second VAR-awarded penalty of the World Cup, Sweden's 33-year-old captain Andreas Granqvist swept the ball low and left of impressive goalkeeper Cho Hyun-woo.
Al Jazeera
More about: WorldCup2018: