Once upon a time, there was an evil demon king Dambhodabhava in Satya Yuga. In pursuit of attaining the boon of immortality, he did tough penance to Surya Dev. Immorality cannot be granted to anyone hence, Surya Dev told him to ask for another boon.
The witty demon conceives a plan and asked for such a boon that would indirectly grant him immorality. The boon he asked for was to have 1000 kavachas (armours) and, it must take 1000 years to break such kavach and also, the one who would break the kavacha would instantly die.
Nara and Narayana were the incarnations of Lord Vishnu. The two sons of Dharma and his wife Murti (daughter of Prajapati Daksha). The two sages took incarnations on Prithvi for the welfare of man kind in Treta Yug. The demon Dambhodabhava was named Sahasra Kavacha now. To lift the boon, Narayan penanced for thousands of years and Nara fought over those thousands of years with Sahasra Kavacha. After thousands of years, Nara was able to break one of the kavachas of Sahasra Kavacha. As Nara broke the kavacha, he died instantly. But, Narayana, due to his tough penance for thousands of years, Narayana could get back Nara’s life. Then, Nara started penancing for thousands of years. Both Nara and Narayana alternatively penanced for thousands of years like this and at last, they were able to break 999 kavachas.
Petrified by the very thought of death, the wicked demon fled from the battlefield seeking refuge to Surya Dev who had given him the boon. He hides himself behind Surya Dev with his last kavacha due to the fear that he might get killed by the hands of Nara and Narayana. Both Nara and Narayana chased him and demanded Surya Dev to return the demon to him. But, Surya Dev who had given Dambhodabhava the promise to protect him refused Nara and Naraya to handover the demon to him.
At this time, there was holocaust (maha pralay) on Prithvi due to the change of Yuga. Thus Sahasra Kavacha escapes death one.
But, in the next yuga i.e. Dwapar Yuga, Dambhodabhava was reborn as Karna with Kavacha where as Nara and Narayana were born as Arjun and Krishna respectively. Since Sahasra Kavacha had the on that whenever his kavacha would be broken by someone, he must die instantly unlike Nara from Naraya-Narayana, Arjun never had the mantra to comeback from death. So, Indra Dev came in disguise of a sage and took away the kavacha from Karna before his fight with Arjun.
Hence, the reason of all Karna’s sufferings was his own actions that he did when he was a demon in his past life.