The 54-year-old male victim died of suspected heatstroke late Wednesday while laying asphalt near the town of Moron de la Frontera in the southwestern province of Seville, emergency services said.
Temperatures reached 43 degrees Celsius (109 Fahrenheit) in Moron de la Frontera on Wednesday. Spain's largest union said it was investigating how long the man had been working and if the crew had taken special precautions because of the heat.
A 50-year-old man is also critical in hospital after suffering heatstroke on Thursday while replacing pipes in Cabeza del Buey, a town in the southwestern province of Badajoz, local media reported.
Spain's meteorological agency said seven cities including the capital Madrid set record temperatures for the month of July on Thursday.
It soared to 40.2 degrees Celsius in Madrid, smashing a previous record of 39.6 degrees Celsius recorded in 2015.
New record highs were also set in Badajoz, Caceres, Ciudad Real, Cordoba, Jaen and Teruel.
The heatwave -- caused by a mass of hot air from northern Africa -- will last until at least Sunday, officials say.