Philippe Coutinho profited from returning Spurs keeper Hugo Lloris's error to open the scoring early on, and Ivan Rakitic scored a sublime long-range second to put the Catalans in complete control at the interval.
Messi would ultimately settle the contest, though, netting a couple of goals either side of Erik Lamela's deflected strike to get Barca back to winning ways after two draws and a loss in their last three outings.
Ernesto Valverde made a big call by bringing in Arthur for Arturo Vidal - one of three changes from the draw with Athletic Bilbao at the weekend - and it paid off as Barca dictated the flow of the game for large parts.
Just 92 seconds were needed for the hosts to edge in front, as star man Messi played the ball through for Jordi Alba, who took Lloris and Kieran Trippier out of the game and pulled the ball back for Coutinho to fire into an unguarded net from the edge of the box.
Aiming to avoid a fourth game without victory for the first time since 2009, Barca continued to look threatening and had themselves a second goal before the half-hour mark.
An impressive team move looked to have fizzled out when Coutinho mishit his shot, but the Brazilian managed to keep the ball in play and set up Rakitic 25 yards out for Barca's 600th goal in the European Cup.
Rakitic lifted both feet off the ground to connect with Coutinho's pass, sending the ball flying past Spurs skipper Lloris via the inside of the post.
Tottenham did enjoy the odd moment on top in the first half, getting a shot on target through Kane - who was dropping progressively deeper as things words on - and seeing Marc-Andre ter Stegen produce a big save to stop Lamela's cross from deflecting into the net off Nelson Semedo.
Messi was bossing things from a deeper position, though, and Barca could easily have added a third to their tally before the break, as Luis Suarez fired across goal when picked out by Messi, and the Argentine forward had a shot of his own saved by Lloris.
Barca should have been out of sight in the early stages of the second period, but Messi twice hit the same post from identical positions after carrying the ball forward.
Thirty-two seconds after the second of those let-offs for Spurs, Kane dragged them right back into the match with his curled finish past Ter Stegen after working the ball onto his right foot.
Tottenham's hopes of salvaging a point were short-lived, though, as Messi soon restored his side's two-goal advantage by guiding Alba's cross into the bottom corner, finishing off another move that he started from deep.
The open feel to the match looked to be playing into Barca's hands, but the Lilywhites were right back in it once again thanks to Lamela's heavily deflected shot off Clement Lenglet, which looped over the reach of Ter Stegen.
Lloris's sweeper instincts nearly cost his side again with 20 minutes left, only for Toby Alderweireld to bail him out when pouncing on the ball before Messi could shoot.
It was end-to-end stuff at Wembley in the third ever meeting between the clubs, as substitute Moussa Sissoko skied a good chance from his first involvement in the match and Suarez had a shot blocked.
The introduction of Fernando Llorente for the final 10 minutes made clear that Spurs would go all out for an equaliser, and it was the visitors who looked the more likely to score the game's sixth goal before Messi struck for a second time.
Lucas Moura's shot was deflected wide off Lenglet, while Kane glanced narrowly wide and Alderweireld had an effort stopped in a routine manner by Ter Stegen, but Messi sealed things when slotting the ball past Lloris after the Frenchman played his side in trouble with a poor pass.
TOTTENHAM HOTSPUR (4-2-3-1): Lloris; Trippier, Alderweireld, Sanchez, Davies; Wanyama (Dier 57'), Winks; Lucas, Lamela (Llorente 79'), Son (Sissoko 66'); Kane
BARCELONA (4-3-3): Ter Stegen; Semedo, Pique, Lenglet, Alba; Arthur (Vidal 87'), Busquets (Vermaelen 92'), Rakitic; Coutinho (Rafinha 83'), Suarez, Messi