Let me talk a little bit about how I "learned" a lot of English using "three easy steps":
First I played several video games in English. I was always trying to understand English by the context, never wordby word. It was several years of hard work! :)
Then I started a bachelors degree in mathematics and that was the first time I was "forced" to read in English. Thevocabulary was really compact and in some weeks I was fluent reading mathematics in English. That was reallyeasy for me, because I really enjoy mathematics.
Finally, I stopped worrying and I just stopped using subtitles in Portuguese when I watched movies and televisionseries. I used to watch them with subtitles in English, but today I don't use those subtitles anymore. For me, thatwas the best way to aquire a good vocabulary. I think I learnedd thousands of words just by watching "Friends" andother TV shows.
Today I understand spoken and written English without problems. But I still don't know a good way to learn how towrite properly (properly to publish an academic paper, for example). So, I just keep reading and watching in English.