It's not just about learning a language in one single swipe! You must divide the language learning process into the four main components: listening, reading, speaking, and writing. Combining all of these tools can give you a powerful advantage when learning a language.
Some people will need a lot of gamification (game-like activities, badges, etc.) to keep them motivated, while others might want something that’s straight to the point.
Courses are created by regular random people or by Memrise. It's 100% Free. The app is fun and very motivating if you find the right course. However, quality of some courses can be quite low especially for the less frequently used languages.
It's quite fun, it has a good number of languages, and it has a large learning community that can help you if you're having trouble with anything vocab or grammar related. It's also free.
You’ll practice the language by completing lots of different types of exercises. They also include plenty of grammar explanations and opportunities to review what you’ve studied. I've heard that LingoDeer is quite good for Korean, Japanese, and Chinese.
You can check out, for example, KoreanPod101 or NorwegianPod101 on YouTube or their website; there might be a series for whatever language you're doing, and the episodes tend to be very good, and don't overload you with too much information at once.
After you have learned all basics, you can start using other flashcards. Download vocabulary and grammar flashcard decks. Also, they talk. This is nice. You can also make quizzes with them. That’s great.
Keeping that in mind, and given the fact that just about all online apps focus only on comprehension rather than output of the language, there is no online language app that can teach you a new language. You need to actually speak it!