Ronaldo is a more complete and better player, as is very evident in his performance with portugal and manchester, where messi fails at argentina at big games.
Thing is, Barcelona's core, is MUCH better then Madrid's core. Barcelona has allways been about busquets backing iniesta and xavi, with around them players that suit their style and messi to supply in the final third.
Madrid, whilst having fancy names, has a relatively poor holding midfield compared to barcelona. Sure, xabi is a good player. Sure, now modric isnt quite bad eighter. But that absolutely doesnt compare to xavi and iniesta.
If Madrid would have had for example schweinsteiger and Pirlo holding their midfield, THEN we could see quite something