The Catalans showed no mercy to the home side, hitting six goals in the process.
Barca dominated possession from the off but looked vulnerable at some moments without the ball, as La Real striker Alexander Isak had a couple of shots saved by Marc-Andre ter Stegen.
However, the visitors took the lead in the 37th minute after Antoine Griezmann blasted his strike into the nets on the rebound while Ousmane Dembele had his shot saved by Alex Remiro in the first attempt. Sergino Dest doubled the lead after a brilliant assist from Lionel Messi right before the break. The goal also marked the first in La Liga for the American youngster
The second half completely belonged to Barca, who went on to score four more goals, with Dest completing his brace inside eight minutes from the start.
Messi had his first of the night after a brilliant lofted ball from Sergio Busquets before Ousmane Dembele made it 5-0 with a stunning finish from his weak foot.
La Real Sociedad scored a consolation goal with the help of teenager Ander Barrenetxea before Messi put the game to bed after combing with Jordi Alba for his second of the night. It turned out to be a fantastic night for the Argentine not only for his brace but he also surpassed Xavi to become the player with most appearances(768) in the Blaugrana shirt.
Ronald Koeman would be delighted to see his side firing in all cylinders especially when the season is reaching the business end with a taut title race on the cards.
Furthermore, Barca leapfrogged arch-rivals Real Madrid to second place in the La Liga table and are trailing leaders Atletico by four points.
Álex Remiro, Martín Zubimendi (Carlos Fernández), Robin Le Normand, Igor Zubeldia (Modibo Sagnan), Mikel Merino, Ander Guevara, Martín Merquelanz, Gorosabel (Ander Barrenetxea), Alexander Isak (Jon Bautista), Mikel Oyarzabal, Portu (Adnan Januzaj).
Asier Illarramendi, Roberto López, Unai Marrero.
Marc-André ter Stegen, Frenkie de Jong, Clément Lenglet, Óscar Mingueza, Pedri (Ilaix Moriba), Sergio Busquets (Ronald Araújo), Jordi Alba, Sergiño Dest (Francisco Trincão), Ousmane Dembélé (Martin Braithwaite), Antoine Griezmann (Ricard Puig), Lionel Messi.
Miralem Pjanic, Neto, Samuel Umtiti, Matheus Fernandes, Júnior Firpo, Arnau Urena Tenas.