The Stars announced the terms of the agreement in a team release.
Radulov spent four seasons in the KHL before signing with the Montreal Canadiens last offseason. It turned out to be a strong fit, as he registered 18 goals and 36 assists for 54 points during the regular season, which ranked second on the team.
The Russian forward also led the Habs with two goals and five assists for seven points in six playoff contests.
Following Montreal's ouster from the postseason, Radulov made it clear that he enjoyed his time with the Canadiens, according to Sean Leahy of Yahoo Sports: "We understand each other. I'm really thankful [to Canadiens general manager] Marc [Bergevin for bringing] me here and [giving] me that opportunity to be back in the NHL and play in the best league. I like Montreal. I like it a lot. ... We have to take it step by step."
Radulov also gave a shoutout to the Canadiens organization and fans for welcoming him with open arms despite the fact that he didn't come in with the greatest reputation:
The Nashville Predators selected Radulov with the No. 15 overall pick in the 2004 NHL entry draft, and he spent two years playing for them before jumping to the KHL's Ufa Salavat Yulayev.
After a four-year stint with Ufa, Radulov went back to the Preds late in the 2011-12 campaign, appearing in nine regular-season games and eight playoff contests.
Radulov then departed for the KHL again to join CSKA Moscow for another four years before making the decision to sign with the Canadiens.
While Radulov's desire has been questioned at times and he hasn't shown a willingness to stay in the NHL long term, his talent is undeniable.
The 30-year-old appeared to mature as a player in 2016-17, and it made him an intriguing commodity in a weak free-agent class.
With his explosiveness and underrated playmaking ability, Radulov figures to add another dimension to the Stars' top-six next season.