Lampaert took the red jersey thanks to the 10-second bonus picked up for the stage win, his first in a grand tour, and leads the general classification by one second over team-mate Matteo Trentin.
Australia's Rohan Dennis (BMC), who led after winning the opening stage time trial is now sixth, 17 seconds back after the peloton split in crosswinds.
Overall favourite Chris Froome is ninth, 21 seconds behind Lampaert, after coming 16th, eight seconds off the Belgian's time, in the stage and finishing the highest of the Team Sky riders.
The stage from Nîme was marked by high winds which played into the hands of Quick-Step Floors, who are expert in riding in tough conditions.
The fight for position in the crosswinds meant the first 46.3km were covered in the first hour with the final 75km of racing a dogfight and placing the entire peloton under pressure.
Sky led the peloton with six kilometres was but were caught by the Astana and Quick-Step Floors teams, while Lampaert attacked at the final kilometre, taking advantage of a change in wind direction on a roundabout
“Our ideal scenario was to create an echelon long before the finish, but in case this didn’t happen, then we had a backup plan, to try again in the last kilometres, Lampaert said.
"We wanted to deliver Matteo in a perfect position to sprint for the win, but once we splintered the peloton and opened a gap in the final kilometre, we improvised a bit, as he told me to go, and that’s what I did."
Anass Ait El Abdia of UAE Team Emirates and Javier Moreno of Bahrain–Merida had to abandon the Vuelta after being involved in a nasty crash some 60km from the finish line.
It was the second Grand Tour Moreno has had to abandon this year after he was disqualified from the Giro d’Italia for pushing Team Sky’s Diego Rosa.