Learning to speak a language isn't always easy, but they said the best way is total immersion. Going to a country and speaking the language with a bunch of people around you who are native speakers is an excellent way to learn. Of course, it works better for extroverts than introverts. Another way is to live in a language house. They have these at many colleges. It is kind of like a dorm, but the rule is that you can only speak a specific foreign language while in the dorm... so your roommates and the people in your building can help you learn.
There are other ways that are more common... taking a class, learning from tapes, etc. And those are great things... not knocking them at all. If you have the self-motivation a home study course is a great idea because you can go at your own pace... but a face-to-face class has the advantage of other people that you can talk to in the language, which helps a lot.