Blaugrana welcomed back goalkeeper Marc-Andre ter Stegen alongside Pierre-Emerick Aubameyang, who joined Memphis Depay, Ousmane Dembele and Ferran Torres in attack while Sergio Busquets was suspended.
Celta had a brighter start in the early stages, as they shaded the contest and Barca were often rescued by last-ditch defending from the likes of Ronald Araujo.
However, Xavi's charges grew in the game and Depay eventually broke the deadlock on the half-hour mark with a first-time finish in the box after a square pass by Dembele, who burst down the right wing with incredible pace.
The hosts came to life as Aubameyang doubled their lead just before the halftime break with a strike in the box after Celta failed to clear Depay's cross.
The Catalan giants had a perfect start in the second stanza as Aubameyang made it 3-0 within two minutes from the restart with a sweeping strike in the box after he was teed up by Dembele once again.
Celta gave themselves hope just after that as Iago Aspas pulled a goal back with a strike into a gaping net after a misplaced back pass by Ter Stegen was intercepted by Thiago Galhardo, who slipped a pass to the Spanish striker.
However, the visitors' hopes evaporated just before the hour-mark after they were reduced to ten men after Jeison Murillo was given his marching orders for fouling Depay as the last man
Barcelona were in control of the encounter after that and Riqui Puig thought he had made it 4-1 in the last 13 minutes after a thumping effort from close range but the goal was chalked off by the Video Assistant Referee (VAR) for offside.
Blaugrana were comfortable in the dying minutes as and threatend to run riot in long stoppage time, but settled for a 3-1 win that cemented second spot on the log for another matchday.