The home side were ahead after 26 minutes when Odion Ighalo converted from close range, with that score still standing at the interval.
The away side continued to push in the latter stages, with the winner eventually coming from Messi 17 minutes from time.
Read how it all unfolded in Sports Mole's minute-by-minute live commentary of the action below.
GRANADA: Tono; Siqueira, Nyom, Mainz, Lopez; Nolito, Rico, Recio, Torje; Ighalo, Aranda
BARCELONA: Valdes; Alves, Pique, Mascherano, Adriano; Fabregas, Busquets, Thiago; Messi, Sanchez, Pedro