Personally, I've learnt English best through music. That way, you keep listening to natives singing - autrement dit: speaking. Not only do you pick up the right pronunciation but you also gain useful vocabulary though the process :) More importantly: it's fun and touching! ..One thing I still remember from my neurosciences lecture (if not the only one..hem ^^') is that memory works a lot better when it's combined with emotion (something we kept as a survival strategy lol ;P). If you're not a massive music fan though, you can try finding series you really enjoy watching. Same idea. The more you're hooked, the more you practise (perfect procrastination excuse too!).
Basically, it all comes down to making the things you learn more personal, I'd say. Learning from a school book doesn't work very well because it doesn't mean much to you.. for e.g., the first sentence I learnt in English was "Fasten seat belts"..you can't see the point in that, can you?! Apart from the fact that you must go through tedious moments to reach a better level..someday...which is true, but it's not exactly the most uplifting perspective either lol so make it more fun, and more 'you' (sounds like a crap add lol). There are words I'll always remember because they're related to a nice memory, like when I first watched East Enders with my 'English mother' and the word 'daft' came out (surprise, surprise..). Now every time I hear someone say 'daft', it makes me smile.
Enough rambling. Hope that helps you a little ;)!