The 30-year-old midfielder has joined the Seville-based club on a three-year deal.
Betis 9/2 to avoid defeat at Barca
“I am very excited,” Garcia said after Betis announced the deal.
“Betis were my first choice because the club is making a great effort to put a competitive team together.”
The former Real Madrid and Manchester City man spent three years with Zenit, winning one Premier League title, two Super Cups and the Russian Cup.
He is the seventh permanent signing Betis have made in a hectic transfer window to date. They have also brought in Jordi Amat and Antonio Barragan on loan.