If you're arriving in Spain today or tomorrow for Christmas, the first thing I would suggest you do is look for somewhere to eat on the 24th and 25th. A lot of restaurants will only be open one one of the two days, and many only at lunchtime. And many restaurants will be reservation only.
In Spain, Christmas Eve ('nochebuena' in Spanish) is bigger than Christmas Day. As a mainly family event, you'll find the country start to shut down in the evening as everyone returns home to be with their nearest and dearest. Christmas Day is a day for sleeping in, but you might be surprised to find more businesses open than you might in the UK or the US. Still, a reservation is always recommended at this time of year.
Unfortunately, it is not easy to find out online which restaurants will be open. If your hotel will be serving dinner, that'll be a good option. If the concierge doesn't know where to go, you'll have to just wander the streets looking for good restaurants.
Where should you look?
- Madrid: Check out the Malasaña, Chueca (both a little to the north of Sol and Gran Via) or La Latina, Huertas and Lavapies (to the south).
- Barcelona: The Raval, to the south-west of the Ramblas, is your best bet. The Gothic Quarter too, though this will likely be expensive or touristy. Walk past the Gothic Quarter, into the Born district to get a little off the beaten path.
- Seville: The Barrio Santa Cruz will be pricey but you'll likely find plenty of places open. Otherwise, try the Macarena area.