Up the road, Trentin and Rojas accelerated away from Roson to contest the finish – Rojas leading the sprint out, but Trentin getting his tactics spot on to come round and sprint to victory.
Added to his 2013 and 2014 stage wins at the Tour de France, and 2016 win at the Giro d’Italia, Trentin – who will join Orica-Scott next year – has now claimed five Grand Tour stage wins.
Roson’s frustration was clear as he hammered his bars as he crossed the finish line a handful of seconds later.
In the peloton, meanwhile, Roche attacked and put 29 seconds into his GC rivals, but there was no other change in the GC as Froome stays in red and Adam Yates (Orica-Scott) remains ninth overall at 1’55”.
Vuelta a Espana 2017: stage ten – result
1) Matteo Trentin (ITA) – QuickStep Floors – 3.34.56hrs
2) Jose Joaquin Rojas (ESP) – Movistar +1”
3) Jaime Roson (ESP) – Caja Rural-Seguros RGA +19”
4) Jacques Janse van Rensburg (RSA) – Dimension Data +21”
5) Alexandre Geniez (FRA) – Ag2r-La Mondiale +56”
6) Marc Soler (ESP) – Movistar +59”
7) Luis Leon Sanchez (ESP) – Astana +2.22
8) Alessandro de Marchi (ITA) – BMC Racing – ST
9) Arnaud Courteille (FRA) – FDJ +2.40
10) Rafael Reis (POR) – Caja Rural-Seguros RGA +3.05
General classification
1) Chris Froome (GBR) – Team Sky – 40.12.44hrs
2) Johan Esteban Chaves (COL) – Orica-Scott +36”
3) Nicolas Roche (IRL) – BMC Racing – ST
4) Vincenzo Nibali (ITA) – Bahrain-Merida +1.17
5) Tejay van Garderen (USA) – BMC Racing +1.27
6) David de la Cruz (ESP) – QuickStep Floors +1.30
7) Fabio Aru (ITA) – Astana +1.33
8) Michael Woods (CAN) – Cannondale-Drapac +1.52
9) Adam Yates (GBR) – Orica-Scott +1.55
10) Ilnur Zakarin (RUS) – Katusha-Alpecin +2.15