Some of the marchers in Barcelona smashed windows and set rubbish bins alight. Police responded with tear gas and baton charges.
There were also protests in the capital, Madrid, and other cities.
Land and air travel were all affected, and domestic and European flights cut to a fraction of normal levels.
The centre-right government of Prime Minister Mariano Rajoy will unveil measures on Friday aimed at saving tens of billions of Euros and making it easier for businesses to sack employees.
It hopes the changes will cut unemployment which is currently the highest in the EU at 23%.
Nearly half of Spain’s under 25’s are out of work.
Unions said 800,000 people joined the protest in Barcelona. Police put the number at 80,000.
Most of the protests were peaceful, but some protesters hurled rocks at bank offices and shop fronts. A branch of the coffee chain Starbucks was set on fire.
“They burned a two-storey Starbucks cafe and another shop,” a spokesman for the regional interior ministry told the AFP news agency.
“It is out now. In the shop there is broken glass and they took out whatever they could burn.”
Police fired tear gas and shot rubber bullets at the ground, TV pictures showed.
In Madrid, 900,000 people took part in protest marches, according to unions. The government did not provide any figures.
Scuffles with police broke out early on Thursday as workers from Spain’s biggest unions picketed Madrid’s bus depot.
Unions claimed strong support at car factories and other industrial sites but the government played down the impact.
Noisy picket lines formed outside transport hubs and some businesses.
Unions said more than 80% of workers took part, but the government said many services were kept running.
The strike is the government’s first big challenge since taking office after elections last November.
By agreement between the government and the unions, bus and rail services were kept to a minimum service while only one in 10 domestic and one in five European flights were able to operate.
Outside Atocha – one of Madrid’s main rail stations – picketers waved red union flags and blew whistles as police looked on.
One protester in Madrid, 31-year-old Angel Andrino, said he had been sacked a day after the labor reforms were approved in a decree last month.
Accompanied on the march by his parents and brother, he told the Associated Press news agency: “We are going through a really hard time, suffering.
“The rights that our parents and grandparents fought for are being wiped away without the public being consulted.”
The UGT union said that participation in the strike was “massive” and that virtually all workers at Renault, Seat, Volkswagen and Ford car factories around Spain had honored it during the shift.
Regional TV stations in Andalusia in the south, Catalonia in the north-east and Madrid were also off the air because of the strike.
With the EU’s highest rate of unemployment, Spain is under pressure to reduce its budget deficit and bring its public finances under control.
“The question here is not whether the strike is honored by many or few, but rather whether we get out of the crisis,” the country’s Finance Minister Cristobal Montoro said.
“That is what is at stake, and the government is not going to yield.”
On 10 February, the government approved legislation cutting severance pay to a maximum of 33 days’ salary for each year worked, compared with the current 45 days.
The government insists the reforms will create a more flexible system for businesses and workers, in a country with a stagnant economy that needs to start creating jobs.
Mariano Rajoy, who took office in December, defended his measures on the grounds that they would eventually generate more jobs.
“No government has passed as many reforms in its first 100 days in office as this one,” he said on Tuesday, speaking on a visit to South Korea.
“The biggest mistake would be to do nothing,” the Spanish prime minister added.
EG0KQbRYkW8The US House Ethics Committee has voted to release its report on former Republican Representative…
ABC News has agreed to pay $15 million to President-elect Donald Trump to settle a…
South Korea’s parliament has voted to impeach President Yoon Suk Yeol over his failed attempt…
Israeli war planes have carried out more than 100 air strikes in Syria on December…
President-elect Donald Trump has threatened to impose 100% tariffs on the BRICS countries if they…
Syrian troops have withdrawn from the city of Aleppo following an offensive by rebels opposed…