Maybe different meanings wasn't entirely right... I meant more like different... subtexts? Suddenly my words are failing me. It seems as though the way they're presented here in Duolingo, one is used more in certain situations and the other in different situations. But perhaps I'm mistaken.
I think in Dutch we have exactly the same two constructions: 'wil' (vil) and 'zin hebben' (har lyst). Since 'zin' doesn't have a literal translation in English (the close would be 'lust,' but that is way more craving than the meaning of 'zin'), it is hard to explain the difference.
Saying that 'vil' is more firm is definitely correct. It also slightly more harsh. You could say 'vil' translates to 'want' more literally, while 'har lyst' could also mean 'would like to' (in case of doing something). Keep in mind I can't think of any case where it literally means that, so don't go throwing that around as a translation.