There was no way for Oedipus to avoid his fate. This is the primary reason that we might argue Oedipus does not deserve to be punished.
...the oracle remains true, and Oedipus is helpless in the face of its powerful prophecy. (eNotes)
Guilt is almost universally assigned - morally (if not legally) - as part an understanding that people have free will and a power over their own decisions. If Oedipus is not free to choose his actions (because they are dictated by fate), we can hardly assign him moral guilt.
He did, however, kill a man out of anger. Though Oedipus does not know the man is his father, he has to real excuse to kill the man anyway. This can be seen as a reason for Oedipus to be punished. He did choose, in the moment, to act in this way. His anger and his pride led him to kill. These are character flaws outside of fate.
In the end, Oedipus does feel deserving of punishment and takes the guilt of his actions upon himself:
For if I had died then,
I would not have brought
so much pain to my friends or me!
Oedipus is a tragic hero and authentic to the concept of tragedy as desceibed by Aristotle. He wins the feelings of audience that'swhy the audience feels pity and fear.His suffering is unusual but he possesses high spirt and he feels it little.For that purpose,he does not commit suicide.There are some reasons which are based on partiality;otherwise he does not deserve suffering:
01. Character is destiny.
02.The role of fate.He is known that he will kill his father and marry his mother but he does not ask about his real parents ,although the beggar hits him that he is not the son of king.
03. He is a light tempered,and in it he does not enquiry about his parents.In such spirit,he kills the king,his real father and his servants He marries the aged lady;so it is the masque of fate.At last,it compels to suffer. Otherwise,he does not deserve any suffering.He saved the country from dragon and did all good things. So man is helpless before the destiny.