Read our material, understand the pros and cons of various apps, and decide for yourself. But our personal favorite is Babbel. It provides the most comprehensive course and great learning gamification.