Lionel Messi began the game from the bench and would have been dismayed to see his side concede to Dorlan Pabon in just the second minute. Alexis Sanchez equalized shortly after but a stunning Ruben Perez effort restored the advantage for Pepe Mel's men at halftime.
Having missed a string of chances in the first half David Villa eventually got a goal before being replaced by Messi, who turned the game around with two goals of the highest quality.
After the 3-0 humbling by Bayern Munich in midweek, Barca's fortunes looked unlikely to improve as the club found itself behind within two minutes.
A clearance from Pinto was headed straight back at the defense by Alex Martinez and Jorge Molina helped it in behind. It appeared to be a lost cause, but the searing pace of Pabon saw him race through unopposed and meet the ball before sliding it into the bottom corner.
The home side was not behind for long, though, as Andres Iniesta glided down the left side of the box and clipped a brilliant cross to the back post which Alexis nodded in.
The Blaugrana were controlling possession and, while Betis still posed a threat on the counterattack, the team missed myriad opportunities to take the lead with Villa the chief culprit.
The deluge of chances continued but Villa, who had already wasted two golden opportunities, was twice more thwarted by the Betis keeper. Having seen his first effort saved from an acute angle, the former Valencia man failed to find the next from six yards after Cristian Tello's cutback.
The young winger then saw an effort of his own bounce off the line after rattling the crossbar and Barca's profligacy proved costly on the stroke of halftime.
With 43 minutes played Nosa Igiebor dispossessed Alexis and rolled the ball back to Perez who arrowed a stunning effort into the top corner from in excess of 30 yards.
With Barcelona still behind early in the second half, Vilanova prepared to bring Messi on and the Argentine seemed to influence things without even stepping on the pitch.
He watched from the sidelines as Villa finally got his goal, making the most of a lapse in concentration from Amaya to head his side level in the 55th minute before being replaced by the 25-year-old.
Five minutes later Messi announced himself by scoring his 45th Liga goal of the season with a majestic left-footed free kick that sailed into the top corner.
Messi was denied by the woodwork from another free kick in the 69th minute but two minutes later he finished a stunning team goal. Iniesta's flick was laid across goal by Alexis, gifting the Argentine the simplest of finishes at the end of a flowing move.
With the result decided Betis became less adventurous and the Catalan giant was able to cruise to final whistle and restore an 11 point advantage over second-placed Real Madrid with four games remaining.
Follow GOAL.COM on Twitter
- Sports & Recreation
- Lionel Messi
- Alexis Sanchez
- David Villa