I think the best way to learn a language is to immerse yourself in it. Listen Spanish radio stations in the Internet,If you find a tune that you particularly like, look for the lyrics and try to follow along. Go to your public library and Check out some movies in Spanish and use the captions while you watch it. And don't forget to practice, practice, practice.
I know it sounds silly but it is the cheapest and easier way to learn any language. I am proof that it works.