Tenth-placed Vincenzo Nibali (Astana) was the first of those off the ramp, and stopped the clock in 11.34, which was enough to overtake Michal Kwiatkowski (Team Sky) – the Pole stopping the clock in 11.47.
Roman Kreuziger (Tinkoff) was also overtaken by the Italian, off the pace with a time of 11.57, but FDJ’s Sebastien Reichenbach boosted his own GC standing with a time of 11.35.
Thibaut Pinot (FDJ), who started the stage level on time with his Swiss team-mate also stopped the clock in 11.35 to cap a good day, and week, for the French team.
Gianluca Brambilla (Etixx-QuickStep) tumbled down the standings, though, finishing more than a minute slower than Cancellara.
Brambilla’s team-mate Bob Jungels, in the white jersey of best young rider, just about held off the FDJ duo overall though – his time of 11.41 enough to stay one second clear on GC.
All eyes then turned to the top three, and Peter Sagan (Tinkoff) set a mark of 11.32 – meaning van Avermaet would have to go 11.40 or faster to win.
Zdenek Stybar, second at the start of the day, also tumbled down the GC after posting a time north of 12 minutes.
Van Avermaet’s time crept closer and closer to Sagan’s as he hit the final straight and with 50 metres to go it was touch and go.
But the Belgian dug deep and found one final burst of energy to stop the clock in 11.39 – sealing victory by a solitary second overall.