Despite crashing during the previous day's stage and suffering with a knee injury, Spaniard Rodriguez out-paced overall rival Froome on the steep final climb to claim the stage victory, with Alexis Vuillermoz (Ag2r) in third.
Fabian Cancellara (Trek Factory Racing) lost the race lead to Froome after crashing heavily during the stage and falling off the pace in the fast finale of the stage to finish nearly 12 minutes down. The bonus seconds earned by Froome for second place saw him rise to the top of the overall classification ahead of Tony Martin (Etixx-QuickStep).
Bryan Nauleau (Europcar) instigated the break of the day, launching an escape from the gun. The Frenchman was soon joined by Jan Barta (Bora-Argon 18), Martin Elmiger (IAM Cycling) and Serge Pauwels (MTN-Qhubeka).
The peloton kept the break's time advantage in close check, and it only briefly hit the four minute mark 40km into the stage before the catch was made before the first categorised climb of the day - and of the 2015 race so far - the Côte de Bohissau.
Disaster struck before the riders reached the Côte de Bohissau, a touch of wheels involving William Bonnet (FDJ) saw a swathe of the peloton crash hard, including race leader Cancellara, Tom Dumoulin (Giant-Alpecin) and Simon Gerrans (Orica-GreenEdge).
Race director Christian Prudhomme quickly neutralised the race, pulling his car to the front of the peloton and bringing it to a halt. Despite being in obvious discomfort, Cancellara rode back up to the halted bunch, but both Gerrans and Dumoulin abandoned.
Once the race had restarted after the neutralised Côte de Bohissau, crosswinds started to split the peloton with some frantic riding by Astana and Tinkoff-Saxo at the head of affairs to try and create a division. The injured Cancellara was one of those initially caught in a second group.
Stage two winner Andre Greipel (Lotto-Soundal) snatched the maximum points at the intermediate sprint with 30km to go, ahead of John Degenkolb (Giant-Alpecin), and soon after the Cancellara group made the junction with the rest of the peloton.
Sky took to the front of the bunch over the fourth category climbs of Côte d'Ereffe and Côte de Cherave, with Cancellara and Greipel among those falling off the fast pace. Tinkoff-Saxo then took up the reins on the run-up to the Mur de Huy before Roman Kreuziger over-cooked a corner.
Froome led the pace with 500 metres to go with Contador on his wheel, but Rodriguez had the more explosive turn of pace to accelerate up the final part of the climb. Froome followed, as Contador dropped back but could not ride around Rodriguez as the Katusha man took the victory.
British rider Simon Yates (Orica-GreenEdge) put in a strong climbing performance to finish eighth on the stage.
Froome now leads Tony Martin (Etixx-QuickStep) by one second overall, with Tejay van Garderen (BMC Racing) in third at 13 seconds. Contador is eighth at 36 seconds, with defending champion Vincenzo Nibali (Astana) 13th at 1-38 and Nairo Quintana (Movistar) in 17th at 1-51. Welshman Geraint Thomas (Team Sky) is ninth at 1-03.
Rodriguez takes the lead in the King of the Mountains classification for his efforts, with Greipel staying safe in the green jersey.
Tomorrow, the riders will face one of the toughest challenges of the opening week - and for some, the whole race - as the Tour reaches home soil in France. Stage four kicks off in Belgium at Seraing, but as it crosses the border it hits a series of cobbled sections towards the finish in Cambrai.
Valuable time could easily be lost or gained from crashes, punctures, bad weather or bad technique over rough road surfaces, and the general classification is likely to be shaken up once more.
>>> Tour de France 2015 stage four preview
Tour de France 2015, stage three: Antwerp to Huy, 159.5km
1. Joaquim Rodriguez (Spa) Katusha in 3-26-54
2. Chris Froome (GBr) Team Sky at same time
3. Alexis Vuillermoz (Fra) Ag2r at 4 secs
4. Daniel Martin (Irl) Cannondale-Garmin at 5 secs
5. Tony Gallopin (Fra) Lotto-Soundal at 8 secs
6. Tejay van Garderen (USA) BMC Racing at 11 secs
7. Vincenzo Nibali (Ita) Astana
8. Simon Yates (GBr) Orica-GreenEdge
9. Nairo Quintana (Col) Movistar
10. Bauke Mollema (Ned) Trek Factory Racing at same time
12. Alberto Contador (Spa) Tinkoff-Saxo at 18 secs
188. Fabian Cancellara (Swi) Trek Factory Racing at 11-43
Overall classification after stage three
1. Chris Froome (GBr) Team Sky in 7-11-37
2. Tony Martin (Ger) Etixx-QuickStep at 1 sec
3. Tejay van Garderen (USA) BMC Racing at 13 secs
4. Tony Gallopin (Fra) Lotto-Soundal at 26 secs
5. Greg Van Avermaet (Bel) BMC Racing at 28 secs
6. Peter Sagan (Svk) Tinkoff-Saxo at 31 secs
7. Rigoberto Uran (Col) Etixx-QuickStep at 34 secs
8. Alberto Contador (Spa) Tinkoff-Saxo at 36 secs
9. Geraint Thomas (GBr) Team Sky at 1-03
10. Zdenek Stybar (Cze) Etixx-QuickStep at 1-04
13. Vincenzo Nibali (Ita) Astana at 1-38
17. Nairo Quintana (Col) Movistar at 1-56
45. Simon Yates (GBr) Orica-GreenEdge at 5-17
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