Do you want to learn new vocabulary in a very efficient way? Use flashcards

Try using international instant messaging programmes with voice chat option, like Skype or ICQ. You will find there a lot of people willing to speak with you in English. Not only native English speakers, but also many learners from different countries. This way, you will not only be able to practise your command of spoken English, but also to get accustomed to different accents people have. Thanks to that, you will have less problems understanding what other say - and that's the key to the -participation in any conversation!