The Australian had only finished 17th on Monday's 39km sprint from the Paraguayan capital of Asuncion to Resistencia, Argentina, a stage won by Sherco rider Joan Pedrero after a speeding penalty for Yamaha's Xavier de Soultrait.

However, on the first real test of the event, a 275km run to San Miguel de Tucuman, Price took advantage of being lower down the running order to win his seventh career Dakar stage by a margin of 3m22s over Walkner, taking the overall lead by 2m39s.

Honda's Joan Barreda held third for most of the stage, but lost time after the final waypoint, handing third position on the stage and overall to his teammate Paulo Goncalves, who is a further 15 seconds behind Walkner.

De Soultrait, demoted from first to 10th as a result of his penalty on Monday, was the lead Yamaha rider in fourth, and moves back to fifth overall, one place behind KTM's Sam Sunderland.

Pablo Quintanilla (Husqvarna) is sixth overall after finishing in the same position on the stage, followed by Ricky Brabec (Honda), 2016 runner-up Stefan Svitko (KTM) and Barreda.

Pedrero, meanwhile, could only manage 13th fastest on the stage, eight minutes down on Price, and now lies 11th overall, behind Yamaha's Alessandro Botturi.

UPDATE: Walkner and Botturi were both handed five-minute penalties after the stage - for losing time stamp and speeding respectively, demoting Walkner from second to 11th and Botturi from 10th to 15th.

This means Pedrero and Gerard Farres (KTM) have been promoted to ninth and 10th respectively.

Bikes standings after Stage 2: