There is nothing better than learning a language in the country in which it is spoken. In fact, there really shouldn't be any other way - because with full immersion your body and mind get
saturated with the culture and the feelings of the language - not just the grammar and vocabulary.
I want to be able to speak Spanish. I really do. And after 4 months in South America, I left feeling confident and capable - and now after so much time away, I barely dare to say "Hola".
So for me, at this point in time I have the Rosetta Stone cd's or an adult language class offered in the Mission.
For those with a bit of time and the inclination you can head to Playa del Carmen on the Yucatan Peninsula in Mexico. Yes, it is not the Playa of 4 years ago but it's not yet Cancun and it's a great
place to learn Spanish in a beautiful setting. And the beach is right there for after school lounging.
Here are a few of my suggestions:
http://www.playa.info/playa-del-carmen-info-spanish-school.html
Language Centers Abroad
Solexico