Barcelona's great at any time of the year.
There are loads of cheap flights, including those operated by easyJet (who fly direct to Barcelona) and by Ryanair (who fly to Girona and Reus, both of which are linked by a direct coach service to Barcelona).
Barcelona is full of culture and history but it's also packed with great restaurants and bars. (Alcohol consumption is not compulsory!). Shopaholics are well catered for and there's a good, cheap, integrated public transport system which makes it really easy to get around.
Chris