Jan Bakelants' first victory as a professional was one to savour as the Belgian found himself the surprise leader of the 100th Tour de France tonight.

The 27-year-old was the last survivor of a six-man group who broke away with less than seven kilometres of the 156km stage from Bastia remaining.

As the peloton swallowed up five of his accomplices, Bakelants kicked again with less than two kilometres left and then stretched every sinew down the final straight as a peloton led by Peter Sagan pedalled furiously but finished one second off the pace.

"I didn't know what the gap was, I just had the director shouting in my ear, 'Go, go, go," Bakelants said of the final frantic metres.

"In the last 300 metres I was thinking it's going to happen. I knew I was going to take the yellow jersey. It's incredible. It's maybe the first and last time in my career but today I'm overwhelmed."

Today's win ends a miserable run of luck for the RadioShack-Leopard rider, who has suffered a catalogue of injuries and crashes in recent years, and began this season by having a right knee operation before suffering a left knee problem.

"It's so incredible for me to take this jersey and give something back to my team after all the misery I've had this year," he said.

"I've had a lot of opportunities to win things but there was always something missing. It wasn't about my shape, it was luck.

"Even if this year began in a very difficult way for me because I had an operation and inflammation and then an injury to the other knee, I worked hard to come back and be the old Jan Bakelants, the one who is able to win."

Bakelants seemed to have all but exhausted his reserves as he crossed the line followed by Sagan of Cannondale and Omega Pharma-Quick Step's Michal Kwiatkowski, with Lampre-Merida's Davide Cimolai fourth and Norwegian Edvald Boasson Hagen of Team Sky in fifth.

Bakelants, a man who uses a picture of a dog as his Twitter profile picture, almost saw his destiny changed by a pesky canine who ran out on to the road just shy of the four-kilometre marker.

Having almost collided with the breakaway, the dog stood and faced the approaching peloton before leaping out of the way in the nick of time.

It was all part of a dramatic finish to a stage which, after early excitement in the mountains, came back to life in the final 12 kilometres as the final categorised climb of the day - a short but steep ramp - mixed things up.

Former Team Sky man Jan Flecha attacked first, quickly joined by Europcar's Cyril Gautier.

Chris Froome then sent a message to his general classification rivals as he climbed out of the saddle and burst forward although he only chased Gautier for three kilometres before dropping back into the group.

It was another Frenchman, birthday boy Sylvain Chavanel, who led out the attack which would carry Bakelants to the finish, seven kilometres from the line.

After yesterday's fairly flat run to Bastia, this was a much more challenging stage and it quickly found out Marcel Kittel, wearing yellow after surviving the stage one carnage to win a sprint finish.

He was dropped before the ascent of the category two Col de Vizzanova, along with fellow quickmen Mark Cavendish and Andre Greipel.

Kittel eventually rolled over the line in the grupetto 17 minutes 35 seconds down on Bakelants, but the German was still in high spirits as he swapped yellow for the green jersey, thanks to a four-point advantage over Sagan in the points battle.

"I knew it would be a big fight on the climb," he said. "It's a pity to lose yellow, but it was something that I was expecting. I am a sprinter. We still have green, so that's something to celebrate now.

"The yellow jersey helped on the climbs. I had goose-bumps on the climbs. People were yelling my name. The experience I had today was something I will never forget."

Kwiatkowski's third place on the day saw him inherit the young rider's white jersey from Kittel, while Europcar's Pierre Rolland will wear the King of the Mountain's polka-dot jersey after beating Blel Kadri to the summit of the Col de Vizzanova.