Hudler, who will earn $16 million in total, scored a career high 25 goals to go along with 50 points for Detroit in 2011-12.
"Jiri Hudler is a highly skilled and dynamic offensive player," Flames General Manager Jay Feaster said in a statement. "He is one of the very best goal scorers in the NHL at even strength and he puts a very high percentage of his shots on net, generating scoring chances for himself and rebound opportunities for his teammates. He fits our need to upgrade and improve our skill and we are very pleased to have him on board."
The 28-year-old Olomouc, Czech Republic native was selected by Detroit in the second round of the 2002 NHL Draft.
For his career, Hudler has scored 87 goals and 127 assists in 409 games, with 160 penalty minutes. During Detroit's 2008 Stanley Cup run, he scored five goals and nine assists in 22 playoff games.