Valls - Sky's Wouter Poels won Friday's low mountains fifth stage of the Tour of Catalonia while Nairo Quintana retained the overall lead after the 187km run to Valls.
Colombian Quintana took the overall lead ahead of Alberto Contador and Richie Porte on Thursday and had to survive this low mountain stage - and the final day in the hills around Barcelona - to clinch the Tour win.
"I expected Contador to try to make up time. You can't let him out of your sight for a moment, and we saw that at the intermediate sprint," said Quintana.
"Contador and the other pretenders are not going to make it easy for us to win this Volta, although fortunately the time he gained was not enough to take the lead."
Poels broke for glory on his own with around 4km to go and a pursuit team of four riders set off just a little too late as the Dutchman crossed the line 50m ahead.
"I was a little bit nervous, especially in the last two kilometres they came really close. I think I always look behind me a little bit too much but it was okay in the end," said Poels.
"It was a bit similar to my win at Tirreno last year, only this time it was a little bit further to the finish. On the downhill was not the best place to be alone, but I had to attack on the climb as I did not want to wait for the sprint.
"Sometimes I know I can do a good effort, and in this case it was a final 10 kilometre tine-trial. Everything or nothing. And it worked out good."
Saturday's flat 197km stage should be one for the sprinters ahead of what could prove an epic three-way struggle between Quintana, Contador and Porte.
Results and standings after stage five of the Tour of Catalonia, a 187.2km ride from Rialp to Valls on Friday:
Stage
1. Wouter Poels (NED/SKY) 3hr 59min 03sec (average: 47.0 km/h), 2. Dario Cataldo (ITA/AST) at 0:11, 3. Gaetan Bille (BEL/AJW) 0:11, 4. Kanstantsin Siutsou (BLR/DDT) 0:11, 5. Carlos Verona (ESP/ETI) 0:13, 6. Simon Gerrans (AUS/ORI) 0:33, 7. Alexey Tsatevich (RUS/KAT) 0:33, 8. Enrico Gasparotto (ITA/AJW) 0:33, 9. Davide Cimolai (ITA/LAM) 0:33, 10. Ben Swift (GBR/SKY) 0:33
Overall standings
1. Nairo Quintana (COL/MOV) 23hr 01min 19sec, 2. Alberto Contador (ESP/TIN) at 0:07, 3. Richie Porte (AUS/BMC) 0:17, 4. Daniel Martin (IRL/ETI) 0:21, 5. Tejay Van Garderen (USA/BMC) 0:27, 6. Romain Bardet (FRA/ALM) 0:32, 7. Ilnur Zakarin (RUS/KAT) 0:42, 8. Chris Froome (GBR/SKY) 0:46, 9. Hugh Carthy (GBR/CJR) 1:01, 10. Rigoberto Uran (COL/CAN) 1:16