have very close friends there. The short answer is Barcelona with the comments below all well founded but if you would like a lot of suggestions, email me.
Spain is a really, really nice place. Madrid is a very cosmopolitan, modern city built around an old one that is full of history. There is a great deal to do and see in Madrid itself.
The country is fairly far north and enjoys a wide range of weather. Madrid is in a central valley and semi-arid. It's dry and hot in the summer and dry and cold in the winter. Clouds are not normally a big part of the picture. Snow is rare.
In the northwest, you have a coastal area with relatively chilly, damp weather due to the arctic current flowing south. The northeast, e.g., Barcelona, is milder as it's on the Mediterranean side and very much beachfront. Great in the summer, if a bit humid, and, I'm told, still very mild in the winter, especially on the south side. The south tends to stay pretty warm all year, especially to the southeast corner.
Food and drink is a BIG deal. The Spanish people really, really care about eating and drinking. Memorize the word paella (pie-a-ah) and feel free to try a lot of the varieties including the one with the octopus ink. Seafood is very big. Olive related foods, especially foods prepared with olive oil, are very, very big. The olive groves in the south go on for miles in every direction. The lamb is generally wonderful. Ditto the pork. They have made an art form out of ham. Tapas were invented there. The main difference in food is that some places it is spectacular rather than simply excellent.
Partying is big with the young people. Do not, repeat not, try to party competitively with the locals. Americans are amateurs. The Spanish are pros. I've watched them leave the wedding reception at 6AM to go home to change clothes to go to work. This at a wedding where the drinks were flowing and the bride was being thrown in the air as part of the celebration (not as big a deal as might be thought as Marie is actually very slender).
While in Madrid, you MUST go to Casa Patas (www.casapatas.com/) for the Flamenco. Get a table close to the stage. I'm not into dance or music but that's part of my plan every time we go.