Before I made my decision where to live in Spain I followed Herr Bert suggestion and visited both cities before I moved there. It was a tough choice because both cities are great, but I opted to live in Madrid after all. Reasons were:
In Barcelona Catalan is spoken and people there often stick to it, although they could also speak Spanish when a foreigner is around. I didn't have the feeling they wanted to exclude me or anything like that, but it was just easier for them to speak Catalan. Maybe that is the reason why people in Barcelona have the reputation not to be as friendly as people from Madrid. Don't think you can generalise like that, but in Madrid everyone speaks castellano (Spanish), so you'll be able to communicate which makes it a lot easier to get to know people.Both Madrid and Barcelona a touristy places, however I found Barcelona even more touristy. Madrid is a more down to earth place with some edge to it.
Nightlife in Barcelona is good, but a night (and day
) out in Madrid is awesome. Plenty of options for every taste, plus decent prices in night clubs and bars.
Barcelona has the major plus that it is situated right by the ocean, but this fact also draws a lot of other young foreigners to the city who want to teach English for a while. Therefore there's more qualified people around and it might be harder for you to find work. I got my job through madridteacher and felt less of competition in Madrid, and I'm not even a native speaker nor have a TEFL.
And lastly, eventhough I missed the ocean once and a while during my time in Madrid the location of the city is perfect.
As it is in the middle of Spain you can travel everywhere in a couple of hours, where as from Barcelona it is a long way to get to the South for example.
Hope this helps with your choice and don't get me wrong, I love Barcelona, but just prefered to live in Madrid.
Steff