Efteråt grät han av glädje och tillägnade segern sin lillebror som omkom i en smitningsolycka.
– Det må låta otroligt, men jag kände att min bror var med mig, säger 31-åringen enligt AFP, och berättar att hans bror blev påkörd när han var ute och sprang för tio år sedan.
– Efter hans död har det varit min dröm att vinna en etapp i Tour de France.
Etappen sträckte sig över 178,5 kilometer, men med 40 kilometer kvar satte Hugo Houle in det som kom att bli segerrycket.
Houle kunde gråtande passera mållinjen som den blott andra kanadensiska etappvinnaren i tourens historia, en dryg minut före närmaste konkurrent.
Fransmannen Valentin Vadouas knep andraplatsen efter en spurtstrid med Houles landsman Michael Woods.
Vingegaard svarade på Pogacars attacker
Totalledare är dock fortfarande Jonas Vingegaard. Danskens försprång inför de fem sista etapperna är oförändrat (två minuter och 22 sekunder), då han och närmast jagande, den dubble Tour-mästaren Tadej Pogacar från Slovenien, korsade mållinjen samtidigt i Foix.
Pogacar satte in ett antal attacker men Vingegaard var följsam och kunde fånga in honom hela tiden.
På söndag kan Vingegaard bli första dansk att korsa mållinjen på Champs-Elysées i Paris som segrare sedan Bjarne Riis 1996.