The short and hard answer, you need to do it all. You need to talk, write, listen, practice words, practice grammar.
As to what to do, consider this:
You practice the words, you practice the grammar, you put together the words you know with the grammar you know, and practice these. Don't waste time learning too many long phrases with any new words. If you want to learn a new phrase, turn it into several small parts and then learn the phrase when you know each part.
My favourite method, after years of paying my way through every "ultimate language-learning" service/guide/website (Rosetta stone, word listening, 10 000 words list, grammar banks), I found something that works for me.
For Russian, I use Russianpod101 (there is also Spanishpod101 by the same company but I cannot comment on its quality), and they provide thousands of pre-recorded lessons. Each lesson revolves around a natural conversation that is being spoken and then analysed. You then get introduced to the important vocabulary, and then the grammar points of that particular lesson.
I take the vocabulary and grammar points alike and construct flashcards with the use of Anki making sure I learn them. The vocabulary of these lessons make a good selection of useful words and phrases, and offers lots of examples of each word in different contexts, explains how they are used and when. The ambition of this site is the most ambitious one I have seen.
Then you should practice writing in the target language using each new words you know every week, to make them stick in memory. Always use your newly-learnt words as quickly as possible in a real context. A good site to do this at is Lang-8. There are lots of people there eager to correct your texts. Then you will have corrected texts of whatever you want to say. So write things each week that you want to say or just describe your life or a natural conversation. It will be corrected and then you can practice it.
So there is my approach, now try find your own :)