The best way to learn a language is to go to the place they speak it, and fall in love with somebody. Seriously, dating a native speaker, and having them commit to speaking to you in their language.
If you're willing to move, and emerse yourself, learning a language only takes a couple months. It's extreme, but unlink almost all other ways of teaching a language, it works.