I would say it's been a mix of both of the things you've mentioned. Creating characters is by no means easy, though it's something that's rewarding once executed.
My personal experience creating characters starts by the need to expand my horizons as a player. Once I decide that I'd like to roleplay through different means, that's when I typically decide to make a new character. My first step is creating a personality. Mikasa Akiyama, my main character is loose and unpredictable. She's my favorite due to the endless ways that I can roleplay her as her personality varies heavily. For other characters, like her brother Inu Akiyama, his personality is more set in stone. He's an unkind sociopath who is conceded and would sacrifice his children if it meant he'd get a personal gain. My character Kikyo Tsu is hardworking and aims to graduate to college and join either sports or clubs and be involved with the student body. So she's a bit of an alternative "goody-two-shoes" and as for my character Viola Ceretti, she's my delinquent character who simply rage baits those around her.
A lot of how they turn out as a character is through the roleplay experiences they endure, though having a simple background and a personality set in stone are my main ways of identifying and roleplaying characters out.
Also: staying committed to characters. I feel like when people don't give a character a purpose, it's easy to get bored of them, hence the name "Throw Away Characters." Creating a character with a purpose in mind is my personal recommendation to ensure they stick around and you have fun playing them.