Messi has been sidelined by injury - which forced him to miss Argentina's World Cup qualifiers last week - but was needed to claim a point after a defensive howler gifted Milan the lead.
Javier Mascherano and Gerard Pique were at fault to allow Robinho to combine with Kaka before putting his side ahead.
Messi replied on 23 minutes after he was afforded too much space, but despite the visitors dominating thereafter they were unable to find a winner.
Milan were gifted their 10th-minute lead following a defensive mix-up between Mascherano and Pique.
They failed to deal with a long punt forward before Mascherano's attempted clearance cannoned back off his team-mate and to the advancing Robinho.
The Brazilian played a one-two with the overlapping Kaka, whose return pass left him with the time to pick his spot.
After failing to score in the league for the first time in two years during the weekend's 0-0 draw at Osasuna, the onus was on Barcelona to pick up their tempo.
They did so by controlling possession, but Milan retained their own threat through Robinho and Kaka while Kevin Constant's forward runs from the back provided an outlet.
Constant's eagerness to get forward was punished, however, on 23 minutes as Barca won the ball back high up the pitch and Messi was left in acres of space down the right flank.
Andres Iniesta slid a pass across to the Argentinian and while Constant desperately tried to get back, Messi had already cut inside Philippe Mexes and got off his shot before the pressure arrived.
With their lead lost Milan went close through Mexes, heading a Robinho corner wide, but Sanchez wasted the best chance before the break when he prodded Iniesta's lofted pass straight at Marco Amelia.
Amelia had to be alert after the break to deny Iniesta as Barcelona made a quick start after the break.
The goalkeeper also had to get down to deny Xavi while Messi hit a volley over.
Milan had seen little of the ball in the second period when Robinho missed a glorious chance to put them 2-1 up.
Sulley Muntari burst down the left and delivered a low cross that Robinho failed to get a touch on with the goal gaping.
Barcelona were the more likely scorers though - Riccardo Montolivo thwarting them on several occasions as he became overworked in midfield - with Adriano sliced wide after running onto a Messi pass.
A winning goal never arrived though to keep Barcelona top of Group H by two points from Milan.