Why no mention of duolingo.com ?
Their iPhone app is driving an immense improvement in my German.
Living in Switzerland I also like to watch shows e.g. on MTV in English but with German subtitles on. Then I can pause the live TV and rewind to match English spoken expression to German translation. This helps too.