Bjorn Thurau (Wanty-Groupe Gobert) attempted a long-range attack – earning a gap with six kilometres to go, which encouraged Nicolas Roche (Team Sky) to put a big dig in from behind and earn a gap.
Several riders tried to chase on from behind, but Roche – on his training roads – hit the coast with a small lead.
The peloton bore down on him from behind, but Roche continued to hold a gap on the undulating, coastal road and led the way under the 2km-to-go kite.
The pace from behind proved too much, however, as Cofidis, Tinkoff and Etixx-QuickStep set a fierce pace near the front of the bunch.
Katusha and Cofidis hit the front under the flamme rouge, and the Orica-GreenEDGE train came forward too with Team Sky’s Milan-San Remo runner-up Swift on their wheel.
Bouhanni also went across, abandoning lead-out man Geoffrey Soupe, but it was Swift who opened up the sprint first.
The Frenchman could not be stopped though, sailing past to win by a length and force Swift to settle for second place again.
Volta a Catalunya 2016: stage one – result
1) Nacer Bouhanni (FRA) – Cofidis – 4.28.51hrs
2) Ben Swift (GBR) – Team Sky – ST
3) Daryl Impey (RSA) – Orica-GreenEDGE
4) Enrico Gasparotto (ITA) – Wanty-Groupe Gobert
5) Alexey Tsatevich (RUS) – Katusha
6) Carlos Barbero (ESP) – Caja Rural-Seguros
7) Jordi Simon (ESP) – VERVA ActiveJet
8) Kevin Reza (FRA) – FDJ
9) Eduard Prades (ESP) – Caja Rural-Seguros
10) Georg Preidler (AUT) – Giant-Alpecin