Froome, who has gone on to win the Tour de France both times after winning the Dauphiné in 2013 and 2015, launched his attack inside the final three kilometres with only Richie Porte (BMC) able to follow.
Porte, Froome's former Sky teammate, wasn't able to hold the double Tour winner off in the final kilometre, conceding a second - as well as bonus time - to the Brit on the line.
What remained of the day's breakaway held an advantage of 1-53 with 10km to go, heading towards the mountain finish of Vaujany, but it was down to just 59 seconds when they hit the final climb.
Mikel Landa (Team Sky) jumped out the front of the peloton with five kilometres to go, followed by Brent Bookwalter (BMC), forcing Tinkoff to the front of the bunch.
All the main contenders were well placed on the tail of Landa, who wasn't allowed far up the road - nine seconds being his maximum lead of nine seconds when he caught the final breakaway rider Enrico Gasparotto (Wanty-Groupe Gobert).
Dan Martin (Etixx-Quick Step) launched an attack with 3km to go, followed by Contador and Porte, with Froome deciding not to react and slowly dragging his way back up to the group.
Froome wasn't struggling, though, launching his own attack shortly after, trying to bridge to teammate Landa up the road. Contador stayed with him, along with Bardet and Porte.
Froome's attacks kept coming, finally distancing Contador with 2.2km left to the summit. Porte stuck with the pace of his former teammate and sat on the Sky man's wheel as the pair built up an unassailable lead.
Adam Yates (Orica-GreenEdge) quietly made his way up to Contador and Martin on the road, but the trio couldn't catch the leading pair.
Froome took to the front under the flamme rouge but the pair were neck and neck into the final 300m. The Brit easily moved past Porte out of the saddle to lead into the final straight and held on to the line for the win and the race lead.
Froome now leads Porte by seven seconds and enjoys a 27-second advantage over Contador with two tough stages left.
Yates pipped Contador and Martin to third place to move further up the leaderboard ahead of Saturday's queen stage to the ski resort of Meribel.
Critérium du Dauphiné 2016 stage five, La Ravoire to Vaujany, (140km)
1. Chris Froome (GBr) Team Sky, in 3-32-20
2. Richie Porte (Aus) BMC Racing, at 1s
3. Adam Yates (GBr) Orica-GreenEdge, at 19s
4. Daniel Martin (Irl) Etixx-Quick Step, st
5. Alberto Contador (Esp) Tinkoff, at 21s
6. Romain Bardet (Fra) Ag2r La Mondiale, at 25s
7. Pierre Rolland (Fra) Cannondale, at 27s
8. Bauke Mollema (Ned) Trek-Segafredo
9. Louis Meintjes (RSA) Lampre-Merida
10. Julian Alaphilippe (Fra) Etixx-Quick Step, all same time
Critérium du Dauphiné 2016, overall standings after stage five
1. Chris Froome (GBr) Team Sky, in 21-24-59
2. Richie Porte (Aus) BMC Racing, at 7s
3. Alberto Contador (Esp) Tinkoff, at 27s
4. Daniel Martin (Irl) Etixx-Quick Step, at 37s
5. Julian Alaphilippe (Fra) Etixx-Quick Step, at 42s
6. Adam Yates (GBr) Orica-GreenEdge, at 52s
7. Diego Rosa (Ita) Astana, at 1-08
8. Daniel Navarro (Esp) Cofidis, at 1-16
9. Bauke Mollema (Ned) Trek-Segafredo, at 1-21
10. Louis Meintjes (RSA) Lampre-Merida, at 1-27
Thank you for reading 5 articles this month* Join now for unlimited access
Enjoy your first month for just £1 / $1 / €1
*Read 5 free articles per month without a subscription
Join now for unlimited access
Try first month for just £1 / $1 / €1
Stuart Clarke is a News Associates trained journalist who has worked for the likes of the British Olympic Associate, British Rowing and the England and Wales Cricket Board, and of course Cycling Weekly. His work at Cycling Weekly has focused upon professional racing, following the World Tour races and its characters.