The win was the 19th title of his career and comes just over a week after he failed to make the cut at Carnoustie.
“I just did not score very well at Carnoustie at all,” he said. “I didn’t putt good. I felt like I hit the ball plenty good enough to be under par after two days, and I was five-over or something. It was just bad scoring.”
Johnson finished at 23-under 265 on Sunday, finally breaking through in an event he finished runner-up in 2013 and 2016.
South Koreans Kim Whee and An Byeong-hun finished second after they each shot 69. They and Kevin Tway were tied for the 54-hole lead with Johnson.
Keegan Bradley had a 64 to finish fourth at 19 under. He shot 63 on Friday, but had a 73 in the third round.
Johnson has a strong connection to Canada because of his engagement to Paulina Gretzky, daughter of hockey icon Wayne Gretzky and mother of his two sons.
“Obviously having a lot of ties to Canada with Paulina, her dad, Wayne, who, thanks to him, I get a lot of fans out here.
“So it makes it a lot more fun playing out here in front of a big crowd.”
“It takes a lot of work and a lot of support from my family to help me get to where I am.”
Johnson also becomes the first player since Tiger Woods (2005-09) with at least three wins in three consecutive seasons on the US Tour.
He said the most important aspect of his game that needed improvement, after the British Open disappointment, was his putting.
“I needed to work on the putter, which I did. I started rolling the putter a lot better this week,” he said.
Johnson got off to a strong start Sunday with back-to-back birdies on the first two holes. He added another on the par-four eighth to make the turn at three under for the round.
He hit his 103 yard approach on the par-four 11th to nine feet and then sank the putt for another birdie.
He made birdie on 16 and then capped his round with a birdie on 18 as he finished just two strokes shy of the tournament scoring record of 263 first achieved by Johnny Palmer in 1952.
An, who was making his Canadian Open debut, improves to 36th in the world rankings after his tie for second. He birdied three of his final six holes.
“Coming down the stretch on those par-fives, I made nice up-and-downs for birdie. So that definitely boosted my confidence,” he said.
Kim earned his third top ten finish of the season after holding a 54-hole co-lead for the first time in his USPGA Tour career.
Tway closed with a disappointing 76 to drop into a tie for 17th at 13 under. He was trying to win his first PGA title in the event where father Bob Tway won the last of his tour titles in 2003.