Valverde had briefly been awarded the overall race lead after the stage two TTT, but the whole Movistar team were handed a one-minute penalty after Jose Joaquin Rojas was seen pushing a team-mate. It was a messy scenario, but the Spaniard left little doubt over the result on stage three.
Valverde followed the wheel of Dan Martin (Quick-Step Floors) in the final kilometre on the steep slope to La Molina, and sprinted around the Irishman to take the victory.
British rider Adam Yates (Orica-Scott) led in the chase group for third place, with Geraint Thomas (Team Sky) and Alberto Contador (Trek-Segafredo) in sixth and seventh.
American Tejay van Garderen (BMC Racing) finished in eighth spot to take the overall race lead from team-mate Ben Hermans.
Van Garderen now leads team-mate Samuel Sanchez by 41 seconds overall, with Thomas in third at 44 seconds.
The day’s escape group consisted of Pascal Ackermann (Bora-Hansgrohe), Natnael Berhane (Dimension Data), Pieter Serry (Quick-Step Floors) and Diego Rubio (Caja Rural). The four riders pushed out a lead of up to seven minutes during the flatter first half of the day.
As the Alt de Toses loomed, the break started to splinter and GC contenders’ teams took control of the chase. Team Sky were particularly active.
Heading into the final 30km and the first of two ascents of La Molina, Sky were still at the front. Berhane was the last rider from the original break to be caught, with 8km to go.
Sky then started shedding riders on the final ascent, with Peter Kennaugh swinging off with 2km to go leaving Thomas on his own. The pace remained high as riders were dropped from the lead group.
As Martin attacked around the final hairpin on the stage that he won last year, only Valverde followed the move. The two arrived at the finish side by side, with Valverde giving the stronger final push and claiming the victory.
The 2017 Volta a Catalunya continues on Thursday with stage four, from Llívia to Igualada over another lumpy route. The race concludes on Sunday, March 26.
Volta a Catalunya 2017, stage three: Mataró to La Molina, 188.3km
1. Alejandro Valverde (Esp) Movistar
2. Daniel Martin (Irl) Quick-Step Floors
3. Adam Yates (GBr) Orica-Scott, at 3 secs
4. Romain Bardet (Fra) Ag2r La Mondiale
5. Ilnur Zakarin (Rus) Katusha-Alpecin
6. Geraint Thomas (GBr) Team Sky
7. Alberto Contador (Esp) Trek-Segafredo
8. Tejay van Garderen (USA) BMC Racing, all same time
9. Michael Woods (Can) Cannondale-Drapac, at 8 secs
10. Davide Formolo (Ita) Cannondale-Drapac, at same time
12. Chris Froome (GBr) Team Sky, at 8 secs
General classification after stage three
1. Tejay van Garderen (USA) BMC Racing, in 5-07-12
2. Samuel Sanchez (Esp) BMC Racing, at 41 secs
3. Geraint Thomas (GBr) Team Sky, at 44 secs
4. Alejandro Valverde (Esp) Movistar, at 45 secs
5. Chris Froome (GBr) Team Sky, at 49 secs
6. Marc Soler (Esp) Movistar, at 1-10
7. Alberto Contador (Esp) Trek-Segafredo, at 1-13
8. Adam Yates (GBr) Orica-Scott, at 1-18
9. Bauke Mmollema (Ned) Trek-Segafredo, at 1-25
10. Jarlinson Pantano (Col) Trek-Segafredo, at 1-25