Game Of Thrones Season 8: Every Death Ranked Worst To Best
11. Theon
Theon had the biggest rollercoaster arc across the eight seasons as he went from loyal Stark surrogate son to arch betrayer to Reek and back to Theon, as he sought for a long time to find who he was and his essential goodness. The strength of the writing was such that it was never fully clear whether that was still in him, but The Battle Of Winterfell did allow him the redemption he'd sought.
It was right for Theon to pledge his life to protect Bran to make up for betraying the Starks, and seeing him deliver on that promise to his very last breath was the perfect end to his story. That defiant last stand proved how much of the Stark spirit was within him and while him charging at the Night King was just a quick way of ensuring he'd die, it marked a return to the old Theon.
Importantly, before he went, Theon was forgiven by Bran and could presumably go on to rest in some sort of peace.