Atletico Madrid lost 3-0 at Real Sociedad on Thursday, leaving Barcelona one victory away from mathematically clinching the Spanish league title.
Barcelona, which drew 2-2 at Celta Vigo on Tuesday without most of its regular starters, can secure its 25th crown at Deportivo La Coruna on April 29.
The Catalan club faces Sevilla in the Copa del Rey final on Saturday, report AP.
Barcelona has a 12-point lead over Atletico, with five matches left, and is 15 in front of third-place Real Madrid, which needed a late goal by Cristiano Ronaldo to draw 1-1 with Athletic Bilbao on Wednesday.
Another loss for Atletico on Sunday against Real Betis would leave Diego Simeone’s team out of contention for the title because Barcelona holds the head-to-head advantage between the clubs.
"Sociedad deserved the victory,” Simeone said. "They played a very good match.”
Willian Jose put Sociedad ahead in the 27th minute at the Anoeta Stadium. Juanmi Jimenez made it 2-0 in the 80th after a perfect backheel from Jose before Jimenez scored again with an injury-time header.
"We played very well against one of the best teams right now,” Sociedad coach Imanol Alguacil said. "We are very happy with how things turned out for us.”
It was a third straight win for Sociedad, which stayed 11th in the standings. Atletico hadn’t lost in three consecutive league matches.