Peloton aproximou-se de altas montanhas para marcar esta terceira etapa. Partindo do Canal Olímpico de Castelldefels, os pilotos subiram à etapa dos Pirenéus, com 203,5 quilômetros de extensão, e terminaram no cume do Vallter 2000 com uma subida final de 11 quilômetros.
Adam Yates acelerou 1,8 quilômetros desde o final para ir sozinho para sua primeira vitória da temporada, a décima quinta de sua carreira. O competidor britânico de 28 anos venceu o colombiano Esteban Chaves (Team BikeExchange) por 13 segundos e 19 segundos sobre o espanhol Alejandro Valverde (Movistar).
O britânico Geriant Thomas (Ineos Grenadiers) ficou em quarto lugar com o tempo de 31 segundos, enquanto Harm Vanhoek (Lotto Soudal), o melhor belga, ficou em quinto lugar com o tempo de 31 segundos.
Ao todo, Adam Yates levou a camisa verde e branca do líder português João Almeida (Deceuninck-QuickStep), agora terceiro, 50 segundos à frente de Yates. O australiano Richie Porte (Ineos Grenadiers) está em segundo lugar, 45 segundos atrás dos líderes. Ineos Grenadiers colocou um terceiro competidor entre os cinco primeiros do general com Geraint Thomas, quarto com um tempo de 53 segundos, enquanto o holandês Wilco Kelderman (BORA-hansgrohe) terminou em quinto lugar em 1:03. Harm Vanhoucke leva o 10º lugar às 1:30.
Na quinta-feira, o pelotão aguarda uma nova etapa de montanha: 166,5 km entre Ripoll e Porte Ayni.
A 100ª digressão da Catalunha terminará em Barcelona no domingo.
Adam Yates ficou em segundo lugar na 99ª edição, vencida pelo colombiano Miguel Angel Lopez em 2019. A corrida foi cancelada no ano passado devido à pandemia do Coronavirus.