Barcelona remained four points clear at the top of La Liga after an emphatic win which saw Lionel Messi score his first league goal for two months.
Neymar opened the scoring with a composed left-foot finish before Luis Suarez doubled the lead with a brilliant volley before half-time.
It was 3-0 shortly after the interval, Neymar scoring his 14th goal in 12 La Liga appearances.
Messi completed the scoring after meeting Neymar's cross.
Neymar celebrates scoring for Barcelona against Real Sociedad
Neymar is La Liga's top scorer with 14 goals this season
It was the Argentina forward's third goal in two starts since suffering a knee injury in a 2-1 win over Las Palmas on 26 September.
Messi has been linked with a move to Manchester City but the 28-year-old did not let the speculation spoil his performance as Barcelona secured a sixth successive victory.
Luis Enrique's side dominated their lowly opponents, Suarez's acrobatic finish the highlight of a clinical team performance.
They have scored 14 goals in the past three games, while Messi looks to be nearing the form which saw him score 43 goals to help Barcelona to the La Liga title last season.
Barca have 33 points from 13 games.
Third-placed Real Madrid, who were hammered 4-0 by Barca last weekend and are now nine points off the pace, play Eibar on Sunday.
Barca's win took them seven points clear of nearest rivals Atletico Madrid, who later reduced the deficit back to four with a 1-0 win over Espanyol thanks to Antoine Griezmann's goal.
Barcelona's players celebrate a goal against Real Sociedad
Barcelona's next La Liga match is away to Valencia on 5 December
Lionel Messi celebrates scoring against Real Sociedad
Lionel Messi only returned from a two month injury lay-off last week
Barcelona forward Luis Suarez scores against Real Sociedad
Luis Suarez has scored in each of his last seven Barcelona appearances

LINEUP, BOOKINGS (5) & SUBSTITUTIONS (6)

Barcelona

  • 13 Bravo
  • 06 Dani Alves (Adriano - 62' )
  • 03 Piqué
  • 14 Mascherano (Bartra - 69' )
  • 24 Mathieu (Alba - 66' )
  • 04 Rakitic
  • 05 Busquets
  • 08 Iniesta
  • 10 Messi
  • 09 Suárez
  • 11 Neymar

Substitutes

  • 01 ter Stegen
  • 15 Bartra
  • 17 El Haddadi
  • 18 Alba
  • 19 Ramírez
  • 21 Adriano
  • 23 Vermaelen

Real Sociedad

  • 01 Rulli
  • 30 Elustondo Booked
  • 03 González
  • 06 Iñigo Martínez
  • 19 Berchiche Izeta Booked
  • 16 Canales Booked (Oyarzabal - 58' )
  • 14 Rubén Pardo Booked
  • 08 Granero Booked
  • 10 Xabi Prieto
  • 11 Vela (Na Bangna - 81' )
  • 09 Agirretxe (Hernández Ortega - 73' )

Substitutes

  • 02 Martínez
  • 07 Na Bangna
  • 21 Hernández Ortega
  • 23 Reyes
  • 24 De la Bella
  • 28 Oyarzabal
  • 31 Bardaji
Ref: Ignacio Iglesias Villanueva