Well duh? Right? But seriously...
It's a lot tougher than it may sound. The biggest way you can help yourself in finishing what you start is not starting at all. Before you attack any project dig deep and evaluate your chances of a satisfactory completion. It's all too common to begin something that, when you really think about it, you've got a very little realistic chance of finishing. This is not to say you can't take risks, or work on something just for the sake of it; only that the time and effort put into something that's doomed from the start, or something with no end, can be better used on something you can finish.
Most of us have multiple projects going at the same time and wether you consciously know it our not they effect each other. If nothing else success breeds more success, and by starting only that which you can succeed at means you'll have an easier time across the board.
Know The Goal At All Times
I don't know how many projects I've been on where I wasn't sure what the end game was, let alone what constituted success. Everyone involved show know, at all times, what "the end" looks like. If they don't it might be a good idea to stop and figure that out before moving on.
Know Your Role At All Times
Before you begin a project you should fully understand your role and be enabled to succeed in that role. If you don't know, you should figure that out before you do anything. As well, as a project progresses you might find your role will change. Make sure you always know where you fit in. The worst is being on a project when you don't know how you fit in.
Leadership and Control
In order to get something done you'll need a leader who's enabled to make final decisions. Nothing gets done quickly (if at all) by committee. You need someone who can step up and move things forward and not be afraid to step on a few toes along the way. If you're that person, make sure you can step in and take control if needed and if you don't have that person on your project -- get them ASAP.
It's also important to note that not only does the project leader (or dictator as we sometimes like to say) need to know he's in charge, so does everyone else. Sounds logical right? I sure think so...
If you've got multiple projects going at the same time you've got to prioritize or run the risk of not finishing any of them. One of the best ways to get something done is to focus on it. To do that you've got to be able to let something else slide a bit. Take the time to look at your workload as a whole and put what's important first.
Tackle The Small Stuff First
Speaking of first...I've found a good way to set yourself up for success with a project is to deal with the smaller bits first. Pay attention to details and don't let small tasks pile up. This will set you up to have the time and energy to be able to focus on larger tasks and inevitable problems that will pop up along the way. Don't get killed by minutiae.
I've found miscommunication to be perhaps the biggest risk to any project. If the people involved aren't talking then chances are the project will have problems. Potentially really big problems. Making sure that everyone involved is engaged and talking with each other will greatly increase your chances for success.
This doesn't mean spending all your time talking, there are times when you need to work.
Find Time To Work and Eliminate Distraction
To get something done you need to be able to work on it. By work I mean "work" -- not have meetings, not talk about working, etc. Set time aside to work on your projects and make sure you've taken measures to eliminate possible distractions. Turn off the phone, e-mail and IM. Close your door. Use a F.O.F.
I've found that making some progress on every project I've got active every week is a good habit that'll help get you get finished with things. Do something, no matter how small, at least once a week to keep the project progressing forward. You'll find that if you let something sit it can be hard to pick back up again.
Don't Get Hung Up On Mistakes
You're going to screw up somewhere along the way. Acknowledge your mistakes, do what you can to fix them and move on. Do not get caught up in the blame game or spend any time on excuses. "No one ever excused their way to success," as I'm fond of saying. It's ok to fail, just be honest, do what you need to do to move on and get on with it.
It's harder than it sounds, trust me, but it's extreemly important you learn how to handle mistakes regardless of fault, etc. How you deal with problems and failure can have a huge impact on the success of all your projects.
Perfect Is The Enemy of The Done
Do your best but don't let a drive for perfection stall your progress. Accept before you begin that chances are you'll need to compromise at some point and just do the best you can given any constraints you've got. Nothing is perfect and "great" is well....great!
Know When To Quit
Sometimes you'll start a project with the best of intentions and it'll go south on you. You've got to know when to let go and give up. As you progress through a project you should check yourself and your progress to make sure it's still doable, etc. Don't be afraid to give up on something that's no longer worth the effort.
If starting something is hard, then actually finishing it is REALLY hard. Hopefully these tips will help you get your projects finished. I'd love to hear other tips if you've got 'em.