Learning any foreign language has its benefits, and studies suggest that immersion is an effective way to learn another language.1 And, it has to be said that one of the most effective ways of learning a lot of English in a short amount of time is through a total immersion course.
Naturally, the longer you can study on a course like this, the more effective it will be, the main downside is it can be very expensive.
One way you can create your own total immersion course is to study different subjects in English. Rather than just studying as an ESL learner, try taking a maths, history, art, geography, literature ... course, in English. There are loads of free courses, videos, articles on so many different subjects on the internet.
Another way to immerse yourself in English is to travel to a country where English is the predominant language. You could arrange a homestay with a family who speak only English, or do a house swap, or even a bit of couch surfing.