In Supernatural, there are a handful of antagonists who joined the side of the Winchesters, and became good. However, I'm not sure how many of them are forgivable, considering their crimes and what they did to earn forgiveness.

What do you think?

Amara

  • Consumed hundreds of souls of humans and demons, killed many people with her fog, casually murdered a few angels and left her brother in a critical state.
  • Was talked into forgiving God and accepting creation, and has now left Earth to be with God. 

Lucifer

  • Killed a group of pagan gods, caused the death of hundreds of humans and demons and angels. Tortured Sam into losing his mind, killed his own brother Gabriel, manipulated many followers including Rowena, and generally treated everyone as expendable.
  • Forgave God for imprisoning him after one apology, and assisted God and the Winchesters in the failed battle against Amara, even at the risk of his own life. 

Meg

  • Killed many of John Winchester's friends, tormented Meg Masters and led her younger sister to suicide, possessed Sam and tried to hurt his friends, attacked Jo with a hellhound or two which led to the death of both Jo and Ellen.
  • Fought against Crowley and the Leviathans and helped with the Winchesters locate the Angel Tablet at the cost of her life, also took care of Castiel during his insanity.  

Metatron

  • Expelled all angels from Heaven, permanently damaged their wings, tricked Castiel into helping him do this, declared himself the new God, used Gadreel to kill various unsupportive angels, tried to make Castiel into a villain, and pretended to know about the Mark of Cain. 
  • He talked God into fighting against his sister, and sacrificed his life to give Sam time so he could rescue Lucifer. 

These are just examples I've noticed. What do you think?

Community content is available under CC-BY-SA unless otherwise noted.