I am not sure if there is one best way of learning English since I heard many opinions. One method works better for some learners while other works better for others. However, watching English videos/movies and reading English subtitles at the same time is, in my opinion, the best way of learning English. Below are the reasons why I think this is the best way of learning English.
You can hear good examples of spoken English.
You don’t understand a word, no problem. Press the pause button and check a dictionary then replay that part of the video.
Play, pause, and replay a certain part of the video as many times as you wish until you are able to copy the pronunciation, intonation, and other features of English language.
You practice listening, reading, and speaking (if you repeat).
Watching videos is not boring (at least not for me).
Some of the video players (if not all) can disable and then enable English subtitles/captions as the user wishes. Play the video with the captions turned off then with the captions on.
Here are some interesting videos I found on the internet:
Bookbox YouTube Channel (https://www.youtube.com/playlist?list=PL1ECF842014D455FD) offers English stories in HD for children with closed captions (English language subtitles). They are short and very interesting (even I like them). An interesting feature is that the English subtitles are highlighted in karaoke style. They also have stories spoken and subtitled in other languages.
ManyThings.org (http://www.manythings.org/b/e/category/videos-with-subtitles/page/2/) offers videos with English subtitles/captions covering a great number of topics for adult learners (exemple: aircraft, anatomy, threats to coral reef, a new generation of Buddhism in America, the basics of tsunami, and many other interesting topics).
Probably there are many other places where this kind of videos can be found but I am not aware of.