Australian Michael Matthews (Orica-Scott) took third place.
Colombian Rigoberto Uran, who finished second overall in the Tour de France in July, attacked from the main pack with two kilometres left, hoping to repeat his 2015 win.
But the Cannondale-Drapac rider was reined in and Sagan won the final sprint comfortably.
The Grand Prix de Quebec is followed by the Grand Prix de Montreal on Sunday.
(Reporting by Julien Pretot; Editing by Hugh Lawson)
Share
