The incident occurred on Saturday afternoon when the victim was diving in the lake about 800 metres from the shores of the village of Concise, Vaud cantonal police said.
The man was diving with another member of a diving club from nearby Grandson, police said.
After plunging to a depth of about 15 metres, the two divers returned to the surface.
The victim then said he was not feeling well and lost consciousness, police said.
His companion pulled him on to the boat they were using where other colleagues began efforts to revive the man and called emergency services for help.
Neither the divers nor medics arriving on the scene were able to save the man, who died on the spot, police said.
A Rega emergency rescue helicopter with a doctor and an ambulance, along with police, responded to the calls for help.
The police force’s lake patrol, based in Yverdon-les-Bains conducted checks to determine the exact cause of the man’s death under the direction of the local prosecutor’s office.