As Spain heads for its second recession since 2010 and unemployment stands at 23%, workers angry at a labour reform the government calls an unstoppable necessity staged a general strike on Thursday, bringing factories and ports to a standstill and igniting flashes of violence on the streets.
Hundreds of thousands attended largely peaceful marches throughout Spain, waving red flags and beating drums against the budget cuts of Prime Minister Mariano Rajoy, who was elected by a landslide only four months ago on a mandate to dig the country out of a debt crisis that has unnerved its European neighbours.
Police fired rubber bullets to disperse crowds in downtown Barcelona after hooded youths threw rocks at windows and set rubbish bins alight in Spain's second city, where - as in much of Spain - unemployment has been devastating among the young.
In Madrid, demonstrators chanted slogans and carried banners protesting against the conservative government's measures, which will make it cheaper for companies to fire workers and will dismantle a nationwide system of collective pay bargaining.
Though organisers said millions attended evening marches in 110 cities local media estimates, in the absence of data from authorities, put the crowds in only the hundreds of thousands.
Some observers see a degree of resignation about the prospects of avoiding new austerity goals dictated by concerns in the European Union that Spain risks going bust.
At the same time, however, the country is tipping into its second recession since the end of 2009 and some observers expect at least another million people to join already swollen unemployment lines, straining the budget. The jobless rate is already 23%, the highest in the 27-member EU bloc.
Spaniards have so far been largely tolerant of Rajoy's efforts to reform labour law, much of which dates back to times when levels of employment were substantially higher. His aim is to meet strict EU-imposed targets for the government budget deficit to ensure Madrid avoids a Greek-style debt crisis.
But the general strike, the first in 18 months, showed that patience may be wearing thin.