Barcelona outclassed city rivals Espanyol 2-0 on Sunday to move to the brink of a third consecutive La Liga title.
A mazy run and shot from Andres Iniesta in the 29th minute and a Gerard Pique header soon after the re-start were just rewards for another controlled and patient display from Pep Guardiola's side.
Second-placed Real Madrid's 6-2 thrashing of Sevilla on Saturday had denied Barca the chance to win the championship in front of their own fans, but they showed few signs of nerves as they calmly dispatched their neighbours.
The Champions League finalists climbed to 91 points and restored their eight-point lead with three games left, only needing a draw at Levante on Wednesday to wrap up the title unless Real slip up at home to Getafe on Tuesday.
"For the first time the league is very close, it's in our own hands and we need to achieve it against Levante," Guardiola told reporters.
"Madrid will win (on Tuesday). I want to win the title as soon as possible. I'm not going to rest anyone because we haven't won anything yet. The only team to have won something is Real Madrid (the King's Cup)."
Barca seemed to be playing well within themselves against a team who have often caused them problems, but after Iniesta slalomed into the area to score Europa League-chasing Espanyol were up against it.
Pique nodded in at the near post from a corner in the 48th and despite the odd scare Barca cruised to the final whistle.
One of the biggest cheers of the day for home fans was for Eric Abidal when the French fullback came on for the last 20 minutes as he continued his recovery from surgery on a liver tumour.
Earlier, Villarreal were held to a dull 0-0 draw at Real Mallorca which damaged their chances of securing automatic qualification for next season's Champions League.
Juan Carlos Garrido's team, who were knocked out of the Europa League at the semi-final stage by Porto on Thursday, stayed fourth in the standings with 61 points after a rare midday kickoff.
Villarreal slipped five points behind Valencia in third, who were 3-0 winners over Real Sociedad on Saturday, but they pulled seven points ahead of fifth place.
At the foot of the standings, Osasuna came from behind to beat Real Zaragoza 3-1 and drag themselves out of the bottom three and up to 14th on 41 points, two ahead of their hosts.
Angel Lafita capitalised on an error to give Zaragoza the lead in the first half but the visitors battled back after the break with goals from Javier Camunas, Sergio Fernandez and Kike Sola.
Zaragoza are kept out of the relegation places by their superior head-to-head record with 18th-placed Deportivo Coruna.