It is said that there are only seven basic plot lines for any form of speculative fiction. Probably true when a clump of well-know books are studied in depth. So what makes the work stand apart? One of these things can be the characters.
In a really good book, there is no such thing as a good, or a bad character. The hero/heroine will have flaws and the bad guy will have good points. Why is this important? Because the reader can relate. The majority of the human race will have flaws or saving graces. It is what makes us human and how we are able to relate to each other. Sympathy/empathy stems from feeling sorry for someone essentially good who flubs. Forgiveness stems from the nicer traits of the less than stellar person who tries to do something right for a change.
So who was the best flawed good guy/girl and who was the best bad guy/girl and why?
The ones that come to mind for me are out of Lord of the Rings. Aragon was the good guy, and yet he has his moments of selfishness and indecision. Had he been less wrapped up in himself, then maybe Boromir wouldn’t have died. Golem, the quintessential bad guy is shown agonizing over killing Frodo. He likes Frodo and he battles with his evil half to stop the killing and yet he can’t help himself in the end as the ring is his master and drives him on. Nevertheless, there are moments when a reader can feel sympathy for him.
Who do you choose and why?