Elana Johnson is hosting the Great Blogging Experiment, where over 150 bloggers are talking about how to write compelling characters.
In my opinion, your characters are the most important aspect of your story. Your setting can be cool, your plot can be intricate, but if the characters are flat or boring no one will care.
So how do you create compelling characters? My technique is to start with the character's basic concept, and then figure out the following things:
1) Strengths & Weaknesses: What is your character good at? What are they bad at? Make sure they have just as many weaknesses as strengths, or even more. You want to make characters that can overcome their flaws over the course of the story, or triumph despite them.
2) Wants Vs. Needs: What does this character want? What do they need? Can you make these things different or even opposite? This will create deep, conflicted characters who struggle with their emotions. You can also create scenarios where the character gets what they want and realize it isn't what they need after all.
3) Deepest Secret: Your character should have at least one secret they keep deep down, which helps drive their wants and needs. This can be a secret about how they feel, a secret about their past, or something they wouldn't talk about with anyone. Does anyone else know this secret? Does anyone suspect? How can you use that to create conflict?
4) Stereotype Breakers: What makes this character different and unique? List a couple things about this character that you wouldn't expect. Just like real people, good characters are complex and have many layers, and as you learn more about them you will discover things that surprise you.
These four things can be used for main characters, side characters, and even villains. Remember, the villain thinks he is the hero in his own story. Try these techniques and see if they work for you!