I'm currently using Duolingo and I can say that it is great for total beginners. I have tried other apps, even online learning, but couldn't seem to grasp it until I tried Duolingo.
What works for me is that it introduces you to some basic words, how to string sentences with them and then Duolingo uses them differently in different context and as you progress into the next lesson. If you need further reinforcement, there is an option to practice weak skills.
I guess Duolingo tracks when I make a mistake before and it makes sure those questions are asked. I also like the fact that it mixed the lessons with oral practice, so you get a chance to practice reading, writing. listening as well pronunciation. So yea, I am having a good time with Duolingo and the gaming side of it, just make me want to practice more :-)