No fee was disclosed but media reports put it at 40 million euros ($44.23 million).
“I wanted to take another big step forward in my career,” the 28-year-old Vidal told the Bavarian club’s website (www.fcbayern.de) on Tuesday.
“I want to keep developing as a player and win important trophies like the Champions League. I think the best opportunity to do so is with Bayern.”
Vidal was a member of the Juventus team beaten 3-1 by Barcelona in last month’s Champions League final at Berlin’s Olympic Stadium.
He becomes Bayern’s second major signing of the transfer window after Brazilian midfielder Douglas Costa joined from Shakhtar Donetsk at the start of July.
Bayern have also sold Germany playmaker Bastian Schweinsteiger to Manchester United.
Vidal is no stranger to the Bundesliga having played for Bayer Leverkusen for four seasons until 2011.
He also helped Chile win the Copa America title for the first time on home soil this month.
“I’m thrilled about playing in the Bundesliga again and obviously hope to win it this time,” Vidal said.
“I didn’t manage it with Leverkusen back then but with Bayern there’s a very, very good chance.”