* Focus on reading text and vocabulary. Grammar will follow naturally from the text.
* Focus on grammar. Vocabulary is a detail.
* Focus on speaking. Speaking is the key to fluency. Speak to as many natives as possible. (Note: this can be incredibly annoying to said native speakers)
* Focus on writing. This is the best way to retain both vocabulary and grammar. Speaking will follow when you have vocabulary and grammar memorized.
* Focus on listening/hearing. Understanding is the key to communication. Remembering grammar and vocabulary will follow naturaly, e.g. from TV shows, games, movies, songs, etc. in the target language.
I could go on and on and on. Seriously. My advice is two-fold:
* Stick with a language. Whatever your method is, don't give up.
* If your method doesn't work for you, change it. If your teacher doesn't work for you, change it (e.g. textbook, school, course, TV show, whatever the "teacher" is).
It's that simple. Truth to be told, learning a language is mostly hard work. There is no secret. There is no "aha, you've been doing it wrong, you could have learned Chinese in 3 months!" method.
For example, using Anki might be useful, and you might find it fun, but it will not magically make you remember anything. And, even if you remember something in the context of Anki, you might not recognize it in the wild (e.g. in a text, song, or a game). Alternatively, you might not be able to produce it (e.g. passive recollection is very different from active production of the language).
I think the best one can do when learning a language is to simply stick with it. In the grand scheme of things, whether it will take you 4 years, 5 years, or 6 years to feel fluent is fairly insignificant in the grand scheme of things. It will, most likely, be years though.