I admire Amir for his courage in facing every cruel act he had committed as a boy, in trying to understand why he had done them, and in trying to atone for his sins against Hassan. Amir does not excuse himself for his actions: he acknowledges them with a kind of fearless honesty.
That being said, I still would have to say that Hassan is my favorite character. Hassan's spirit is infused with love, and he loves unconditionally. There is no cruelty or vindictiveness in him. Even though Hassan was not born into an easy life and life does not treat him gently, he feels no self-pity and finds joy in those he loves and in simple pleasures. As a man, Hassan lived with the same kind of integrity. He took care of his family and died an honorable death. In reaching out to Amir across the continents before he died, Hassan demonstrated that he still loved his friend, regardless of what Amir had done to him.
Considering Amir and Hassan, both of these characters deserve to be "favorites," but for different reasons. Hassan reminds us of the best of humanity; Amir reminds us that with honesty and courage, we can redeem ourselves from sins of the past.
I suppose that Amir would be my favorite character. I mean, it's sort of the automatic choice since he's the protagonist, but he's the most interesting character. I like how he has to struggle with a new culture as I kind of had to when I moved to America. I also like how he struggles with the memory of the wrongs he has done in the past.