He covered the distance in 18 minutes and 44 seconds at an average speed of 47.06 km/h. Holland's Lieuwe Westra was second with Canada's Svein Tuft third.
Dominique Cornu (Skil-Shimano) finished as first Belgian in fifth place.
For Millar, aged 33, this is his biggest win since he was suspended for doping use between 2004 and 2006.
Overall, Luca Paoloni of Italy on Thursday lost his leader's jersey finishing 3rd. Ukraine's Andrej Grivko was second.