Initially in school and listening to The Smiths
and then I moved to Australia when I was 17, then went to University there, and by the 3rd year I was speaking it really fluently. It took about 4 years of speaking it all the time to start dreaming in English, but at least 10 years before I started doing math in my head in English (they say this is a true indication of how well you speak a language).
I used to be very fluent in Russian, but as I started speaking English on daily basis, it literally replaced Russian. So now I understand it quite well still, but I just can't get any words out. Weird
But if I went to russia for like a year, I think it would come back.