I think that the best way to learn English is to practice a lot. Only through hard work good results can be acheived. I myself have worked a lot, so I can be sure of it. The more grammar exercises you make, audio recordings you hear - the better you would feel the language.