Leashed walks with your dog should be a pleasant experience. You shouldn't be pulled and tugged all over the place. Unfortunately, many leashes permit and actually encourage just that. The most common way to attach a leash to a collar is clipping it on, and that simply gives a dog license to pull. In fact, "flexis" -- those popular flexible, retractable leashes -- simply exacerbate the situation, because dogs think they can go off on their own.
There are alternatives, such as "gentle leaders," which attach to the dog's muzzle, or harnesses that go around the body. These may be effective, but they cost more and may take some additional training.
Here's a technique that could save you a lot of headaches and frustration. Take any ordinary leash with a handle, and instead of attaching it to your dog's collar, slip the leash through the handle (see photo). Then put it around your dog's neck. Move the leash high up on the dog's neck so you can keep it snug and handle it from above. Keep the leash fairly short as you walk.
What does this accomplish? The leash acts as a slip-leash, allowing you to have more control by applying upward pressure. It usually only takes gentle upward pressure with a shortened leash to get your dog to walk by your side. An occasional gentle tug lets your dog know that you are in control. Always maintain a calm demeanor, giving gentle corrections if the dog tries to get ahead of you. Pretty soon, your dog should understand what you want and the walk should be a lot more pleasurable.
This method is preferable to letting a dog pull horizontally on a leash, which essentially means the dog is controlling the walk and pulling you. It is a simple, easy way to stay in control and have a more enjoyable walk.