I don't know what's the best way, but I have a pretty good English though I wasn't born to an English speaking home.
My English came mostly from reading books in English, books are good cause the vocabulary is pretty wide and you learn a lot of words, and also because the language and grammar are all proper. Just pick a nice book and read it, start with easy ones and move to more difficult (I started with mostly si-fi and fantasy and moved to classics). Also, try renting DVDs in English and watch them without the subtitles or listen to Audio books - that's helpful because you learn how to pronounce the words you read.
Another good thing is to find a pan-pal, or write a blog or become active in different internet forums - anything that would get you to read and write in English and communicate with others.