Zadorov has a goal and five assists in 21 games this season.
The 28-year-old from Moscow was selected by the Buffalo Sabres in the first round, 16th overall, at the 2013 draft.
He has 42 goals, 90 assists and 599 penalty minutes over 588 career NHL games with Buffalo, Colorado, Chicago and Calgary.
“First, I’d like to thank Nikita for his commitment to the Flames and his professionalism through this process,” said Flames general manager Craig Conroy in a statement.
“This trade provides us with important draft assets, cap space and the opportunity for another one of our young prospects to prove himself in the NHL.”
Canucks general manager Patrik Allvin spoke to media on Wednesday and admitted an interest in signing a defenceman as the team struggles to fill the absence left by Carson Soucy, who is on long-term injured reserve about a week ago.
“Nikita is a big, strong and mobile two-way defenceman who will bring more physicality to our backend,” Allvin said in a statement.
“We really like his size and reach and his addition to our blue line gives us more depth and better options moving forward.”
Earlier this season, Zadorov’s agent, Dan Milstein, cast doubt on the defenceman’s long-term future in Calgary in a social media post.
Milstein took to the X platform, formerly known as Twitter, on Nov. 10 to respond to a fan on whether the Flames would be able to keep the defenceman, writing “I don’t think so” before raising concerns about his client’s ice time.
Zadorov later confirmed that he had talked with the Flames about the possibility of a trade.
“We’ve been discussing it. Like I said, I cannot really say a lot of stuff. Maybe it’s going to be time (soon) when I’m going to be able to share it with you, for sure,” Zadorov said on Nov. 11.
Zadorov is scheduled to become an unrestricted free agent after this season.
The Canucks were scheduled to host the Vegas Golden Knights on Thursday, while the Flames were set to welcome the Dallas Stars.
The fifth round draft pick traded to Calgary was acquired from the Chicago Blackhawks earlier this week in exchange for forward Anthony Beauvillier.