The Twins announced the deal shortly after Willingham passed a physical on Thursday. The 32-year-old should bring some much-needed pop to the middle of the batting order. He hit .246 with a career-high 29 homers and 98 RBIs for the Oakland Athletics last season.
The Twins were looking for more power from the right side of the plate after trading Delmon Young to the Tigers last season. Willingham has topped 20 homers four times in six full major league seasons.
His signing could mean the end of Michael Cuddyer's run in Minnesota. Twins GM Terry Ryan said this week that the team has not ruled out Cuddyer's return.