Summarize:

In certain areas, it's the hardest thing to do, but it's the best use of your time. Talking to actual native speakers is the most effective way to improve your English skills, speaking or otherwise. So whether you have to Skype them, call them, or beg them to speak to you, do so. Your progress will be faster this way than any other. Even if they're just tourists, invite them to dinner! They get a meal, you get an English lesson. Advertise on Craigslist. Take a class and get buddy-buddy with your teacher. Offer a language exchange. They're hiding out there somewhere! No, not English music, the music of English -- its lilt, its prosody, the sing-songy-ness of it. The intonation. Even if you speak perfect English technically if you speak it like a robot you're not speaking it the way it's meant to be spoken. Watch people. Watch how their mouths form the words. Watch how emotion is communicated. Watch where the emphasis goes on certain sentences and how that provides context. Apart from just deciphering their words, take notice of the humor, the feeling, and the formality they employ. Above all, if you want to be understood, slow down. The more clearly you speak, the better chance your listener has of understanding you. It's tempting to get nervous and want to speed up to get it all over with, but you can't do that! Clarity is key -- for some native English speakers, too! They will be patient with you -- don't worry! You just gotta be patient with yourself. It's much less frustrating to speak to someone who you understand even though they're speaking slowly than to speak to someone you don't understand at all. Speaking quickly isn't impressive if your tongue gets all jumbly. Though we hear ourselves all the time, we really don't know quite what we sound like. So record yourself! What are the weak and strong points you hear in your speech? And then you can concentrate on what you need to work on.  A great idea is to get a book on tape, record yourself reading an excerpt from it (or mimicking the narrator), and comparing yourself to the recording. That way you can do it over and over until you get it right! When that's a bit too much effort, just read your books aloud. You'll score points on your reading skills and your speaking skills. Half the battle is just getting comfortable with the words! Yes, one class is good. In fact, one class is even great. But if you can take more than one class -- of differing styles -- that's even better. A group class can be cheap, fun, and work on all your skills, but adding a one-on-one class, too? You'll get that individualized attention to your speech you've been craving. That's a double dose of improvement. There are specialized classes you can take, too. Accent reduction classes, business English classes, tourism classes, heck, sometimes even food classes. If you see something that interests you (let's face it, sometimes grammar doesn't cut it), go for it! You may learn more than you think. This is the biggest, easiest mistake to make. You go about your day, you're on the job working partly in English, you go to your English class, and then you go home and revert back to your native tongue. While you may be making slow improvements, you'll never get past that dreaded lingual plateau. Make a point to speak it at home, too. Have only English at the dinner table. Stick to English TV at home. Make it as 24/7 as possible. Heck, talk to yourself in English. Narrate your actions. While you're washing the dishes, say what you're doing, thinking, or feeling. It sounds a little silly (if you get caught!), but it keeps your brain thinking in English before your first language, which is huge. Once you can do that, the rest is just keeping it up. It's easy to look at your situation and think that you'll never be exposed to English naturally as much as you would like. Going abroad is expensive, you don't know any foreigners, etc. That's the lazy way of looking at it! English speakers are everywhere; sometimes they just have to be found and coaxed out of hiding. You have to come to them. Heck, call up an English hotline. Call up Nike and ask about their sneakers. Call a phone company and make small talk about phone plans. Start a blog. Set your OS to English. Play WoW. Get into English chat rooms. There are ALWAYS opportunities to be had.
Find native English speakers. Listen to the music of English. Slow down. Record yourself. Take different style classes. Speak English at home. Create opportunities.