Buffalo will send two undisclosed draft choices to Minnesota in the trade.
Cassel spent the last two seasons with the Vikings. Last year, Cassel started three games before breaking his foot in a Week 3 game against the New Orleans Saints.
In two seasons in Minnesota, Cassel started nine games, going 4-5.
In 10 NFL seasons, Cassel has a 33-38 career record, completing 59 percent of his passes for 15,727 yards with 96 touchdowns and 70 interceptions for the New England Patriots, Kansas City Chiefs and Vikings.
Cassel, 32, is scheduled to make $4.15 million in base salary next season, the final year of a two-year, $10.5 million deal he signed with the Vikings.
The Bills, now coached by former Jets head coach Rex Ryan, finished last season 9-7 and second in the AFC East.
- Scooby Axson