The prolific Portuguese forward made no mistake with a powerful finish, which deceived Victor Valdes at his near post.
Benzema spurned a glorious chance to double Madrid's advantage just two minutes later when he volleyed against the post from close range.
Barca profited from some uncharacteristic Madrid defending to equalise on the half hour, when Messi latched onto to a poor header form Pepe to slam home for 1-1.
A fractious start to the second half was lifted by a moment of sheer quality from Messi, who curled home an unstoppable free kick from 25-yards to put the Catalan giants ahead on the hour.
Once again a lead in the match was short lived as Jose Mourinho's men fought back almost instantly through their talisman Ronaldo, who slid a composed finish past Valdes after being played through by Mesut Ozil.
Barca came closest to finding a winning goal in the closing stages through the most unlikely source, when Montoya crashed a shot against the crossbar from outside the area just two minutes from time.
A late barrage of pressure from Barca could not separate the teams as an enthralling 2-2 draw came to a close.
Two goals each for Messi and Ronaldo means Madrid still trail Barca by eight points in the race for the La Liga title.