I'll start by saying that I have no Masters in Creative Writing, and have never been on a writing course - what I do have, though, is nineteen published books, with many, many reviews that talk about my character realism, so I hope some of this advice will help new writers who aim to achieve similar.
1. Develop a clear idea of who your characters are
Sometimes I have to write a few chapters from my characters' points of view before I really get a feel for them. Most of my novels are written from a few 1st person POVs, and, during the beginning of the first draft, I may be unsure of exactly who they all are; it's not unlike when you first get to know someone in real life. The more you explore the inside of their heads, the clearer the different aspects of their personalities become.
When I start a new novel, and I've, say, written a chapter from Evie's POV, then one from Hemsley, then one from Byron, I will re-read Evie's first chapter to reacquaint myself with her before starting her next chapter. I do a lot of re-writing in the 1st draft! Similarly, when you're writing a sequel, or the next part in a series, it's a good idea to read the whole of the last book through before you begin the next one. It will remind you of all those little idiosyncrasies of speech that it's so easy to forget, and it keeps the flow going.
Now and again, I find that the personality I decided upon when I was planning the story out doesn't quite fit the plot, so I have to make some tweaks - and these tweaks need to be made all the way through. For instance, if you realise, in Chapter 10, that Byron needs to be less introverted than he has appeared so far, you'll need to go back to the beginning and modify his actions, reactions and thoughts, even how communicative he is, all the way through. This is how you keep the characters real, and believable; readers pick up on sudden, inexplicable personality shifts.
2. Are you sure your main character is worthy of star billing?
In Tipping Point, the first book in my post apocalyptic series, the main character is a 34-year-old mother called Vicky. When I began the 2nd book in the series, Lindisfarne, I'd already decided that it should include several points of view, one of which would be Lottie, Vicky's 16-year-old daughter. I soon realised that I adored writing Lottie, the words just spilling out of my fingertips— and that, whereas Vicky was absolutely the right main character for Tipping Point, she needed less centre-stage time in Lindisfarne. In the 3rd book, UK2, she didn't need very much at all, whereas Lottie was blossoming.
Think about it: how many times, when reading, have you loved a secondary character more than the protagonist? It's possible that you won't realise until you start writing who the most compelling characters actually are. I'd planned the series around Vicky, but Lottie became far more colourful. Reader-wise, I was delighted to find that everyone loved her—Vicky, less so. Don't be afraid to change your mind!
3. Take care not to 'lose' the character within the action
In the past year or so I've read a few novels in which the protagonists have been little more than a vehicle for a fast-moving plot. I haven't believed in them; they've been just a name on a page. Even if your novel is plot rather than character driven, the MC still has to be three dimensional; if the reader doesn't care about a character, they won't care about how the story develops.
Whether the MC is busy falling from an aeroplane, getting banged up in a scary South American jail or having tea with her mother-in-law, you still need to know how they think and feel, and their development within the story needs to be feasible. For instance, it is unlikely that a cossetted, stay-at-home wife who, previously, wouldn't say boo to a goose, would suddenly be able to converse with members of the criminal underworld with ease, just because that's the way you want the plot to go.
Another way that it's easy to 'lose' the character is in a long stretch of dialogue, written when you need to convey certain information. It's so easy to end up talking in your own voice, rather than the character's, because you're so anxious that the reader will absorb the points. But Evie might not explain it as eloquently as you would; she might not have as large a vocabulary as you. Jay might have difficulty expressing himself; Ozzy might use slang words that you wouldn't. Never forget that it's the characters who are talking, not you!
4. Avoid over-description of appearance
Mostly, as long as you know if a character is short or tall, fat or thin, fair or dark, if you know their nationality and age, you form your own picture of what they look like, and we all see them differently. This is why, when books are translated onto the screen, people disagree about the casting choices—and why you don't need detailed descriptions of what people look like, or intricate detail about what they're wearing. Hands up who skims over long descriptions of outfits, rooms and scenery in books? ✋✋✋✋✋✋ ... and it's a good plan to avoid those appearance description clichés. You know; flashing emerald eyes and unruly auburn curls for a girl who's a bit feisty. Jawline that could cut glass and intense velvet brown eyes for the hero. I once saw someone complaining about the phrase 'heart-shaped face' that she kept reading in romance novels, which amused me.
5. Writing in multiple POVs? Make sure they have difference 'voices'.
I've read so, so many books in which I sometimes forget whose POV I'm in because the 'voice' is exactly the same as the previous character. When you're re-drafting, make sure they don't all use the same words—for instance, it took my 2nd test reader for the book before last to point out that 3 of my characters used the word 'grubby' for someone who was dirty. Yes, it's a common word, but it's unlikely that they would have all used exactly the same way of describing someone. This is what your (my!) thesaurus is for. 😉
Different people will use a variety of expletives and slang - for my series, I had a list up on the wall of the words that characters did and didn't use, so I wouldn't have both Dex and Doyle describing Verlander as a 'dickhead'. But it's not just individual words, it's attitude, sentence patterns, an optimistic or pessimistic feel, whether they use sarcasm, levels of education, usage of slang phrases, profound thought or a more flippant approach... they should 'speak' as differently as people you know in real life.
Readers don't get to know a character by being told that she has a stand-offish demeanour, or that he speaks hesitantly because of his experiences in the war. Characters comes alive because of their thoughts, actions and words. Describing their thoughts is easiest if you write them in the 1st person, of course, but 3rd person can convey them just as well, if you write in 'deep POV', i.e., from inside the character's head, rather than in the form of a narrator.
- 1st person: Just knowing that I'm going to see Joe after all this time is making my stomach churn; please God don't make me still be in love with him. Please.
- 3rd person (deep POV): Her stomach churned; would seeing Joe again, after all this time, be as gut-wrenching as she dreaded? Most importantly of all, was she still in love with him?
- 3rd person narrator: She dreaded seeing Joe again after all this time. The very thought made her stomach churn; she was so scared that, after all this time, she would find that she was still in love with him.
Most of all, I think, you write good characters by slipping into their head as you are writing them. Becoming them, so you know what they are feeling, how they are seeing a situation; it might be quite different from how you would see it yourself.