The Bucks also reached agreement with free-agent forward Torrey Craig, agents Dave Spahn and Austin Brown told Wojnarowski.
Forbes, 27, leaves the San Antonio Spurs and joins the Bucks for the opportunity to play a significant role on a championship contender. Forbes will have a player option in the second year of the deal, a source told Wojnarowski.
Forbes averaged 11.2 points, 2.0 rebounds and 1.7 assists in 63 games last season for the Spurs, making 62 starts.
In the 2018-19 season, the shooting guard appeared in all 82 games, starting 81, and averaged 11.8 points, 2.9 rebounds and 2.1 assists.
Craig, 29, averaged 5.4 points and 3.3 rebounds in 58 games for the Denver Nuggets last season, making 27 starts. The small forward averaged 4.5 points and 3.3 rebounds in 19 playoff games, making three starts.
Craig is an important fit for the Bucks, especially because of the way he can guard all over the floor. With Denver, coach Michael Malone used Craig to defend many of the elite wings in the Western Conference.