Celtic took a massive step towards the last 16 of the Champions League with an astonishing victory over Barcelona.
They took the lead when Victor Wanyama rose majestically to head past Victor Valdes from a corner on 21 minutes.
Barcelona pressed for an equaliser, but teenager Tony Watt came off the bench to give Celtic a cushion in the closing minutes.
Lionel Messi tapped home in injury time, but Celtic held on to inflict Barca's first defeat of the season.
It was a momentous victory for manager Neil Lennon, who was part of the team that knocked Barca out of the Uefa Cup in 2004, and his men - banishing memories of the injury-time defeat in Barcelona a fortnight ago.
And it leaves Celtic second behind the Catalans in Group G on seven points, three ahead of next opponents Benfica and four better off than Spartak Moscow, who visit Glasgow on the final matchday.
Celtic Park was rocking at a decibel level previously reserved for the most meaningful of Old Firm derbies, but predictably the unflappable maestros of Barcelona, twice champions of Europe in the last four years, paid the partisan crowd no heed as they quickly settled into their fluid passing game.
Euro highlights at Celtic Park
1969: European Cup second round
Celtic 3 Benfica 0
1979: European Cup qtr-final
Celtic 2-0 Real Madrid
2001: Champions League group stage
Celtic 4-3 Juventus
2004: Uefa Cup second round
Celtic 1-0 Barcelona
2006: Champions League group stage
Celtic 1-0 Manchester Utd
2007: Champions League group stage
Celtic 2-1 AC Milan
2012: Champions League group stage
Celtic 2-1 Barcelona
It brought them the first opportunity of the game six minutes in, but Fraser Forster dealt easily with Xavi's shot despite a touch from Alexis Sanchez just in front of the keeper.
Messi blazed over the bar from a promising position moments later as the pattern of play was quickly established.
Alex Song picked up an early booking for pulling back Miku and a second late challenge on the same player almost cost him his place on the field after just 18 minutes.
Few inside Celtic Park had cause to debate that for long as the home side snatched the opening goal three minutes later.
The source, as in the game at Camp Nou, was a Charlie Mulgrew set-piece - this time a corner from the right.
His deep delivery was met forcefully by Wanyama, who outjumped Jordi Alba - the man whose late winner broke Celtic hearts two weeks ago - and headed high past Valdes to send the crowd into raptures.
The manner of the goal again highlighted an aerial vulnerability in the otherwise practically flawless Barcelona make-up.
Lennon (right) is enjoying his first crack at the Champions League group stage as a manager
They quickly resumed their relentless probing of the Celtic defence, almost finding an equaliser as Messi played a one-two with Andres Iniesta before rifling a shot off the top of the crossbar.
The frame of the goal came to Celtic's rescue again as Alexis got on the end of a Dani Alves cross only to see his header come back off the post.
And then Kelvin Wilson scrambled the ball off the line as an Alba cross caused hearts to flutter in the stands.
Nonetheless, unlike in the previous meeting, Celtic held onto their lead until half-time and it was fully 11 minutes into the second period before Forster was meaningfully called into action, diving to his right to stop a curling Messi effort.
Celtic, who last featured in the group phase in 2008, made Valdes work from another corner, though Mikael Lustig's header lacked the power to really test him.
Forster, sublime in Camp Nou, reproduced that form on the hour mark as he got down quickly to push away Alexis's well-struck shot from 10 yards and the keeper was promptly back to his feet to deny the Chilean on the rebound as well.
Marc Bartra almost gifted Celtic a second goal, waiting on Valdes to come and deal with a cross ball. When the keeper chose to stay on his line, Mulgrew looked poised to volley past him, but Bartra recovered to block the shot.
The Celtic fans bayed for a red card for Song midway through the half for another foul on Miku, but the referee again let him off.
Forster pulled off another outstanding stop to scoop yet another Messi shot up and away and the Argentine also saw a free kick comfortably held with eight minutes remaining.
The keeper dispatched the ball upfield, Xavi failed to cut it out and Watt showed composure beyond his years to bury it past Valdes.
Celtic fans were whistling at deafening levels for referee Bjorn Kuipers to end the game, perhaps mindful of losing a 2-0 lead in the final few minutes at Dundee United on Sunday.
And Messi ensured a nervy final few minutes as he scored at the start of injury time, following up after Forster had saved superbly again, but Tito Vilanova's side could not find another goal and Celtic and their supporters were left to celebrate long into the night.
Live text and stats
Wednesday, 7 November 2012
23 Lustig (Watt 72)
07 Miku yellow card
09 Samaras (Kayal 79)
15 Bartra (Pique 71)
18 Alba yellow card
25 Song yellow card (Fabregas 71)
09 Sanchez (Villa 67)
37 Cristian Tello
Ref: KuipersAtt: 55,283
Attempts on target
Attempts off target
90:00+4:00 The referee signals the end of the game.
90:00+2:41 Centre by Lionel Messi, clearance by Charlie Mulgrew.
90:00+2:25 The ball is delivered by da Silva Dani Alves, clearance by Efe Ambrose.
90:00+1:57 Kris Commons concedes a free kick for a foul on Andres Iniesta. Andres Iniesta takes the direct free kick.
90:00+1:18 Javier Mascherano concedes a free kick for a foul on Tony Watt. Nicolas Fedor Miku takes the free kick.
90:00+0:37 Assist on the goal came from Rodriguez Pedro.
90:00+0:37 GOAL - Lionel Messi:Celtic 2 - 1 Barcelona A goal is scored by Lionel Messi from close in high into the middle of the goal. Celtic 2-1 Barcelona.
90:00+0:23 Rodriguez Pedro takes a shot. Save by Fraser Forster.
88:59 Effort from inside the area by David Villa misses to the left of the target.
87:46 Andres Iniesta takes a shot. Save made by Fraser Forster.
87:33 Corner taken short by Lionel Messi.
87:20 Lionel Messi crosses the ball, Charlie Mulgrew manages to make a clearance.
Correction - 84:41 David Villa produces a right-footed shot from just outside the area that goes harmlessly over the bar.
84:41 Shot from just outside the area by David Villa goes over the bar.
Correction - 84:18 The ball is delivered by Hernandez Xavi, Rodriguez Pedro takes a shot. Kelvin Wilson gets a block in.
84:18 Hernandez Xavi delivers the ball.
82:40 The assist for the goal came from Fraser Forster.
82:40 GOAL - Tony Watt:Celtic 2 - 0 Barcelona Goal scored by Tony Watt from inside the penalty box to the bottom left corner of the goal. Celtic 2-0 Barcelona.
81:29 Free kick awarded for a foul by Efe Ambrose on Andres Iniesta. Shot on goal comes in from Lionel Messi from the free kick,
save by Fraser Forster.
80:41 Ramos Jordi Alba takes a shot. Blocked by Efe Ambrose.
78:52 Substitution Beram Kayal is brought on as a substitute for Georgios Samaras.
78:18 Effort on goal by David Villa from just outside the penalty area goes harmlessly over the target.
78:05 Outswinging corner taken from the left by-line by Hernandez Xavi.
77:55 Ramos Jordi Alba takes a shot. Kris Commons gets a block in.
77:47 Da Silva Dani Alves sends in a cross, clearance by Adam Matthews.
77:38 A cross is delivered by da Silva Dani Alves, Georgios Samaras gets a block in.
76:29 Effort from just outside the area by Andres Iniesta goes over the target.
75:18 Da Silva Dani Alves challenges Georgios Samaras unfairly and gives away a free kick. Fraser Forster restarts play with the
75:05 Francesc Fabregas sends in a cross, Victor Wanyama manages to make a clearance.
74:33 The ball is delivered by Ramos Jordi Alba, blocked by Adam Matthews.
71:09 Substitution Tony Watt replaces Mikael Lustig.
70:31 Substitution Francesc Fabregas comes on in place of Alex Song.
70:21 Substitution Gerard Pique replaces Marc Bartra.
69:45 Lionel Messi takes a shot. Save made by Fraser Forster.
68:53 Corner taken short by David Villa.
68:06 Foul by Georgios Samaras on Javier Mascherano, free kick awarded. Marc Bartra takes the direct free kick.
67:18 Alex Song challenges Nicolas Fedor Miku unfairly and gives away a free kick. Fraser Forster takes the free kick.
66:42 Substitution (Barcelona) makes a substitution, with David Villa coming on for Alexis Sanchez.
65:13 Free kick taken by Efe Ambrose.
65:13 Booking Ramos Jordi Alba is cautioned by the ref for unsporting behaviour.
64:55 Unfair challenge on Mikael Lustig by Ramos Jordi Alba results in a free kick.
63:59 Victor Wanyama produces a cross.
62:51 Alexis Sanchez gives away a free kick for an unfair challenge on Mikael Lustig. Efe Ambrose takes the free kick.
61:31 The assistant referee flags for offside against Victor Wanyama. Free kick taken by Javier Mascherano.
60:16 Da Silva Dani Alves produces a cross.
59:46 Alexis Sanchez takes a shot. Save made by Fraser Forster.
58:02 The referee blows for offside against Nicolas Fedor Miku. Free kick taken by da Silva Dani Alves.
57:04 The ball is delivered by Charlie Mulgrew, Mikael Lustig takes a shot. Save by Victor Valdes.
56:31 Corner taken by Kris Commons.
Correction - 56:17 Charlie Mulgrew sends in a cross, da Silva Dani Alves gets a block in.
56:17 The ball is delivered by Charlie Mulgrew, Ramos Jordi Alba gets a block in.
56:03 A cross is delivered by Charlie Mulgrew, clearance made by Javier Mascherano.
55:34 Lionel Messi has an effort at goal from 20 yards. Save by Fraser Forster.
54:26 Da Silva Dani Alves sends in a cross.
52:50 Corner taken by Hernandez Xavi, Marc Bartra takes a shot. Save made by Fraser Forster.
52:28 Lionel Messi decides to take the corner short.
52:20 Hernandez Xavi delivers the ball, clearance made by Efe Ambrose.
52:05 Hernandez Xavi crosses the ball, blocked by Kris Commons.
51:45 Hernandez Xavi decides to take a short corner.
50:23 The ball is delivered by da Silva Dani Alves, Rodriguez Pedro has a headed effort at goal from deep inside the area missing
to the right of the target.
48:52 Centre by da Silva Dani Alves.
45:01 The match restarts for the second half.
45:00+0:22 The ref blows to end the first period.
42:57 Georgios Samaras concedes a free kick for a foul on Marc Bartra. Free kick taken by Marc Bartra.
42:41 Andres Iniesta takes a shot. Kris Commons gets a block in.
40:33 Ramos Jordi Alba takes the free kick.
40:33 Booking The referee shows Nicolas Fedor Miku a yellow card.
40:24 Nicolas Fedor Miku challenges Andres Iniesta unfairly and gives away a free kick.
40:11 The ball is swung over by Ramos Jordi Alba, save by Fraser Forster.
38:32 The ball is sent over by da Silva Dani Alves, Kris Commons manages to make a clearance.
37:41 Foul by Kelvin Wilson on Rodriguez Pedro, free kick awarded. Free kick taken by Hernandez Xavi.
36:08 Da Silva Dani Alves delivers the ball, Alexis Sanchez has a headed effort at goal from close in that strikes the post.
35:52 Kelvin Wilson concedes a free kick for a foul on Alexis Sanchez. Free kick taken by Alexis Sanchez.
35:24 The ball is delivered by da Silva Dani Alves, clearance made by Kelvin Wilson.
33:41 Ramos Jordi Alba produces a cross, Adam Matthews manages to make a clearance.
32:53 Hernandez Xavi produces a right-footed shot from just outside the penalty area that goes harmlessly over the target.
30:16 The ball is swung over by Ramos Jordi Alba, clearance by Joe Ledley.
28:30 Lionel Messi takes a shot.
28:06 A cross is delivered by Ramos Jordi Alba.
26:33 Adam Matthews sends in a cross, save by Victor Valdes.
25:49 Inswinging corner taken right-footed by Hernandez Xavi from the left by-line.
25:36 Da Silva Dani Alves takes a shot. Charlie Mulgrew gets a block in.
24:59 Andres Iniesta takes a shot. Blocked by Kelvin Wilson.
20:35 Charlie Mulgrew provided the assist for the goal.
20:35 GOAL - Victor Wanyama:Celtic 1 - 0 Barcelona Victor Wanyama finds the back of the net with a headed goal from close range. Celtic 1-0 Barcelona.
20:02 Corner taken left-footed by Charlie Mulgrew from the right by-line,
19:52 Efe Ambrose crosses the ball, Alexis Sanchez gets a block in.
Correction - 17:54 Alex Song challenges Nicolas Fedor Miku unfairly and gives away a free kick. Efe Ambrose takes the direct free kick.
17:54 Unfair challenge on Nicolas Fedor Miku by Alex Song results in a free kick. Free kick taken by Victor Wanyama.
17:26 Free kick awarded for an unfair challenge on Kris Commons by Ramos Jordi Alba. Fraser Forster takes the direct free kick.
13:18 Georgios Samaras is caught offside. Victor Valdes restarts play with the free kick.
12:03 Direct free kick taken by Mikael Lustig.
12:03 Booking Alex Song goes into the book.
11:57 Free kick awarded for an unfair challenge on Nicolas Fedor Miku by Alex Song.
11:07 Georgios Samaras is ruled offside. Free kick taken by Javier Mascherano.
9:57 Kris Commons challenges Alex Song unfairly and gives away a free kick. Alex Song takes the free kick.
7:37 Shot from deep inside the area by Lionel Messi clears the bar.
6:21 Alexis Sanchez takes a shot. Save by Fraser Forster.
6:01 Hernandez Xavi takes a shot.
5:50 A cross is delivered by Rodriguez Pedro, clearance made by Adam Matthews.
5:31 Free kick awarded for an unfair challenge on Andres Iniesta by Kris Commons. Hernandez Xavi restarts play with the free kick.
4:45 Charlie Mulgrew produces a cross, Alex Song makes a clearance.
4:05 Free kick awarded for an unfair challenge on Georgios Samaras by Javier Mascherano. Charlie Mulgrew takes the free kick.
0:00 The match begins.
Live text and data provided by The Press Association.
This page is best viewed in an up-to-date web browser with style sheets (CSS) enabled. While you will be able to view the content of this page in your current browser, you will not be able to get the full visual experience. Please consider upgrading your browser software or enabling style sheets (CSS) if you are able to do so.