Match ends, Inter Milan 1, Barcelona 1.
Spanish champions Barcelona reached the Champions League knockout phase with two games to spare, despite being held by a spirited Inter Milan in a dramatic finish at the San Siro.
Barcelona, without the injured Lionel Messi, took a late lead when substitute Malcom scored moments after coming on.
But Inter levelled when Mauro Icardi was given time to turn in the Barca box and blast in from close range.
Inter remain second in Group B, three points ahead of Tottenham.
With Inter and Tottenham still to meet again, it means one of these sides will drop points and therefore only one can to overhaul Barcelona.
Barcelona show why they are among the favourites
When the Champions League group stage draw was made in the summer, many eyes were immediately drawn to a group which was generally considered as one of the toughest in the competition.
Barcelona, however, have made relatively light work of it.
The Spanish champions are considered one of the favourites for the tournament - although second behind Manchester City with many bookmakers - but have not progressed past the quarter-final stage since winning in 2015.
And they knew a victory in the San Siro would seal their place in the knockout stage as group winners for a 12th season in a row.
Without Messi, who travelled to Italy following an arm injury but was ultimately not risked, the visitors controlled an engrossing game against an Inter side which had won nine of their previous 10 games.
Luis Suarez was the chief threat, firing a fierce shot over the bar in the first half, then seeing a close-range effort disallowed after the break because the ball had gone out play before Ivan Rakitic crossed.
However, their reward came when Malcom whipped into the bottom left corner from 20 yards for his first Barcelona goal since arriving from Bordeaux last summer.
That looked set to give manager Ernesto Valverde the opportunity to rest some players in the final two games against PSV Eindhoven and Tottenham if he wished - until Icardi's late intervention.
Inter prove they can compete with the best
Inter's only defeat in their recent run came in last month's reverse fixture in the Nou Camp and, before the rematch, manager Luciano Spalletti urged his players to show they could compete against opponents of "the highest level".
While Barcelona dominated possession and territory, Inter were far from outclassed and their resolve was rewarded when Icardi blasted in his only chance of the night.
The Argentine striker, who played in the Barcelona youth ranks, was able to turn away from Sergi Roberto in the penalty area and fire in through the legs of keeper Marc-Andre ter Stegen.
While it mattered little to Barcelona in terms of their qualification, the equaliser could prove to have huge significance for the hosts as they now know a draw against Tottenham at Wembley on 28 November will see them reach the last 16 for the first time since 2012.
Malcom is the new Tello... - the stats
- Malcom is the first player to score on his Champions League debut for Barcelona since Cristian Tello, who netted a brace against Bayer Leverkusen in March 2012.
- Inter are unbeaten in their four home games against Barcelona in the Champions League, winning one and drawing three of those fixtures.
- Barcelona have only lost one of their previous 15 games in the Champions League, winning nine and drawing five.
- However, four of the six games they failed to win in this run came against Italian opposition.
- Inter Milan played out just their second draw in their last 21 Champions League games, winning 10 and losing nine, with their previous one coming against Trabzonspor in November 2011.
- Each of Inter's three goals at the San Siro in the Champions League this season have been scored in the 85th minute or later, with Mauro Icardi netting two of those.
- 6de Vrij
- 77BrozovicBooked at 84minsSubstituted forMartínezat 85'minutes
- 16PolitanoSubstituted forCandrevaat 81'minutes
- 14NainggolanSubstituted forValeroat 63'minutes
- 44PerisicBooked at 88mins
- 1ter Stegen
- 4RakiticBooked at 42mins
- 8ArthurSubstituted forVidalat 74'minutes
- 11DembéléSubstituted forMalcomat 81'minutes
- 2Nélson Semedo
- Szymon Marciniak
- Shots on Target
Second Half ends, Inter Milan 1, Barcelona 1.
Malcom (Barcelona) wins a free kick in the defensive half.
Foul by Kwadwo Asamoah (Inter Milan).
Ivan Perisic (Inter Milan) is shown the yellow card for a bad foul.
Coutinho (Barcelona) wins a free kick in the attacking half.
Foul by Ivan Perisic (Inter Milan).
Goal! Inter Milan 1, Barcelona 1. Mauro Icardi (Inter Milan) right footed shot from the centre of the box to the bottom left corner.
Attempt blocked. Matías Vecino (Inter Milan) right footed shot from the centre of the box is blocked.
Substitution, Inter Milan. Lautaro Martínez replaces Marcelo Brozovic.
Marcelo Brozovic (Inter Milan) is shown the yellow card for a bad foul.
Malcom (Barcelona) wins a free kick on the right wing.
Foul by Marcelo Brozovic (Inter Milan).
Goal! Inter Milan 0, Barcelona 1. Malcom (Barcelona) left footed shot from the right side of the box to the centre of the goal. Assisted by Coutinho.
Substitution, Inter Milan. Antonio Candreva replaces Matteo Politano.
Substitution, Barcelona. Malcom replaces Ousmane Dembélé.
Attempt missed. Luis Suárez (Barcelona) left footed shot from the left side of the box is high and wide to the left.
Corner, Barcelona. Conceded by Sime Vrsaljko.
Attempt blocked. Coutinho (Barcelona) right footed shot from outside the box is blocked. Assisted by Luis Suárez.
Substitution, Barcelona. Arturo Vidal replaces Arthur.