It has been said that personality is stable over one's lifetime. By the age of seven we will maintain the same outlook on life unless something drastic has happened. Character comes with internal personality and values while duty is a promise to uphold a certain value system. To uphold a duty when no reward is forthcoming is a deeper value system based into the way the person sees themselves. Are we driven by values or duty?
Consider a person with character who seeks to live life with meaning and ensure they they treat people with justice and kindness. They have character and are capable of making tough decisions because they believe life is more than the fulfillment of one's needs. Not that their needs are not important, but that there is a greater meaning to it all.
A person who believes in duty is willing to enact certain actions in order to fulfill a promise they made to someone else or a personal promise they made to themselves. Duties are often socially oriented and are sworn as an oath in front of other people. Socially people are expected to live by the duties they proclaim. When that social environment changes those duties often disappear.
We know that duties are sometimes left unfulfilled and not all people have values. Their character is such that if it doesn't benefit them they have no use for it. A duty to them is only as good as the praise and financial benefits it offers. If no one is watching those duties are quickly discarded for something that is more advantageous to the situation they find themselves in.
The type of person who keeps their duties and oaths even long after no one is looking or can hold them accountable is the type of person who has developed character. Their character runs deep into their value systems and they have incorporated those beliefs into their self-image. Without their core values they know they would be drowned into a world of being the same as everyone else.