James Rodriguez appeared to have rescued a point for the hosts with an 86th minute strike to make it 2-2 after goals by Messi and Ivan Rakitic had overturned Casemiro's opener.
Madrid captain Sergio Ramos was sent off for a two-footed lunge on Messi in the 77th minute and that left Barcelona in a strong position, until Rodriguez fired home at the near post at the Bernabeu.
But Messi's second goal in the final minute of added time earned Barca a vital win in the title race that leaves both sides with 75 points, although Madrid have a game in hand.
Photo: REUTERS (Lionel Messi's last-minute winner opens up the title race in Spain).
Source:
Stuff.co