I personally prefer antagonists and protagonists to be morally gray and broken. I don't care for the hero/villain nomenclature.
I also really enjoy insanity on either side... like in "Sleeping Beauty" when Maleficent curses a baby to death because she wasn't invited to the party. Or Ariel deciding that she's in love with a dude without so much as a conversation in "The Little Mermaid"
I don't necessarily have to agree with their reasoning, but I definitely want to be made to believe that the reason is valid to the villain.
Ex. Not being invited to a party is no reason to kill a baby... but she's obviously crazy and vindictive enough to believe that it is, based on her other actions in the movie.
When it comes to the protagonist... I don't like their choices to always be easy. Every now and then, I want there to be stakes. When people die... they're dead. I want them to have to make morally ambiguous choices. Like the trolley problem.
The most basic version of the dilemma, known as "Bystander at the Switch" or "Switch", goes:
There is a runaway trolley barreling down the railway tracks. Ahead, on the tracks, there are five people tied up and unable to move. The trolley is headed straight for them. You are standing some distance off in the train yard, next to a lever. If you pull this lever, the trolley will switch to a different set of tracks. However, you notice that there is one person on the side track. You have two options:
Do nothing and allow the trolley to kill the five people on the main track.
Pull the lever, diverting the trolley onto the side track where it will kill one person.
Here's the link, if you're interested: