United welcomed back Paul Pogba from suspension with Marcus Rashford also starting, while under-fire Philippe Coutinho lined up in attack for the Catalans.
Barca were up and running as early as the 12th minute with Luke Shaw deflecting Luis Suarez's header at the back-post into his own-net.
United struggled to break even from then, needing an outstretched leg from David De Gea to prevent Coutinho from adding a second 36 minutes in.
In the final minutes to halftime, the pressure looked to take its toll on the visitors with Diogo Dalot meeting Rashford’s teasing cross to head across the face of goal.
The Red Devils high-pressured game continued in the second half, but the cutting edge failed to come through.
From a sweet passing move, Nelson Semedo played in Suarez who was denied by the side-netting just after the hour mark..
Moments later, Jordi Alba’s trademark runs from the left nearly led to a second goal for the visitors but De Gea got down to save with his feet and kept United in the contest.
Barca threatened again late on, with a low free-kick from Messi from the edge of the area which was easily parried by De Gea.
However, the Spanish giants had done enough to grab an away goal and the victory at that ahead of the return-leg next week.