Answer:
A morally ambiguous character is Hamlet.
Explanation:
Hamlet is the protagonist of Shakespeare's play, so he plays a very fundamental role.
As readers, we cannot quite understand if his actions are guided by the love he feels for his mother and father, or if the hatred he feels inside is what leads him to commit murders under the excuse of avenging his father's death.
We can see a tender and emotional side of Hamlet when he is faced with Ophelia's death. But he also killed innocent people without regret in regards to his revenge.
Hamlet is struggling internally with himself, and although the story begins as a sensitive character who feels so much love for the father, and wants to avenge his death, he ends up being in charge of killing more people than the one he wanted to punish.
This whole question of ambiguity is essential for the work since all the development is done through his character, and is a so morally ambiguous character that his mental health could even be questioned.