Mauricio Pochettino's men needed to at least match Inter's result at home to PSV and they looked to be heading into the Europa League, but Lucas struck five minutes from time to turn the situation on its head and send Spurs through as Group B's other match also ended 1-1.
In a week which he has been accused of turning up late to training, Ousmane Dembele seemed switched on earlier than anyone else with his seventh-minute opener.
Spurs crafted a host of chances after the break and, just when it looked as though they were never going to find a way past Jasper Cillessen, Lucas – a 71st-minute replacement for Son Heung-min – found the net to complete a great escape.
LUCASSSSSS! pic.twitter.com/rLfh89MyiA— Tottenham Hotspur (@SpursOfficial) December 11, 2018
A woeful start saw Spurs trailing after just seven minutes – Dembele storming past Kyle Walker-Peters after robbing the youngster on the halfway line, before evading a Harry Winks tackle and slotting past Hugo Lloris.
Spurs improved and should have levelled just after the half-hour mark, but Son was thwarted by Cillessen when one-on-one with the goalkeeper.
Barca remained a threat, though – Philippe Coutinho striking the post from 20 yards on the stroke of half-time.
The visitors went close twice in the first five minutes of the second period, with Christian Eriksen seeing a shot from the edge of the box saved, before Harry Kane smashed wide under pressure from Clement Lenglet.
Cillessen had to be alert again soon after to keep Son at bay, before producing his best save of the match to keep Lucas' goal-bound header out 14 minutes from the end.
After Coutinho hit the post for the second time, Kane played a teasing ball across goal and Lucas converted from close range in the 85th minute, seeing Spurs through by the skin of their teeth.
What does it mean? Pochettino's substitutions decisive
Spurs' performance was commendable throughout, even when they found themselves trailing early on. However, the introductions of Erik Lamela and Lucas made a huge difference to their effectiveness in the final third, with both playing a role in the vital equalising goal.
Cillessen excellent despite late goal
The match certainly was not one-way traffic, as Spurs created numerous chances – more than enough to have taken the three points. But Cillessen made some vital saves, six in total, always looking assured between the posts and only conceding due to suspect defending.
Alli kept under wraps
Although Spurs had a fair amount of joy in the final third with respect to creating chances, Dele Alli was certainly the quietest of their typically creative players. He did not engineer any opportunities for his team-mates, nor did he have a shot on target.
Key Opta Facts
3 - Ousmane Dembele has scored in each of his last three Champions League appearances at Camp Nou. Opener. #BARTOT— OptaJoe (@OptaJoe) December 11, 2018
- Barca have gone unbeaten in each of their last 29 home games in the Champions League (W26 D3), equalling Bayern Munich's record set in April 2002.
- Kane has had a hand in 16 goals in 16 Champions League appearances (13 goals, three assists)
- Barca named a starting line-up with an average age of 25 years and 17 days; their youngest in a Champions League game since December 2015 versus Bayer Leverkusen (24 years, 319 days).