Few things wreck me as much as the endgame of DA2 regarding Sebastian. He’s frequently villainized for leaving and trying to annex Kirkwall if Hawke doesn’t choose to kill Anders after Anders blows up the Chantry, but the thing is, his actions make sense. (Not that executing Anders is necessarily the right decision nor that Sebastian made the right call either, just that it makes sense he’d do both.)
Okay, important things to keep in mind:
Sebastian’s entire biological family was murdered. His mother, father, brothers, all dead. This happens shortly before the first scene of him in Act 1.
Sebastian lives in the Chantry, and Elthina acts as his surrogate mother. The rest of the clergy are likely his friends, and he may even consider more than just Elthina family.
Hawke is the person that keeps helping him get justice. Hawke is also Sebastian’s friend.
So keeping that in mind, here’s the events of that fateful night in Kirkwall when shit blew up.
Meredith and Orsino are getting into it in Lowtown. Hawke and friends go to deal with that mess. Orsino decides he wants Elthina to settle their debate, and JustAnders decides now is the perfect time to blow up the Chantry, killing everyone inside and probably at least a decent chunk of Hightown along with them. The only reason Sebastian isn’t dead is due to him being Hawke’s friend and called to help him deal with the Meredith/Orsino fight. In exchange for being alive, he just had to see his home blow up with his surrogate mother and the last/nearly the last of the people he considers family inside. He was just given cause to hate magic and mages.
But he doesn’t. He only wants the actual man responsible to pay.
He specifically is confused about why Meredith is calling for annulment of the Circle when Anders is literally right there.
But Meredith is corrupt and demands that all the mages die because of this one that she turns over the decision of killing to Hawke. (Actually, she’d called for the Right of Annulment prior to this but was denied and Anders just gave her an excuse, but point is, the lady acting as “interim” leader of Kirkwall is corrupt.)
So, Meredith (and Orsino, but his power is limited to minor things in the Circle so he’s really not responsible here anyway) leave Anders’s fate to Hawke to decide. Hawke, who is quite possibly the last person of significance in Sebastian’s life still breathing (or at least the head of his few remaining friends if he got to cultivate his friendships with the others in the group). Hawke, who has helped deliver Sebastian justice for his family before. Hawke, who might even be his beloved wife, who should be furious that Anders could have easily killed Sebastian if nothing else.
It doesn’t really matter what Hawke’s reasoning is. Sparing Anders kinda just like Hawke telling Sebastian that they don’t care at all if he lives or dies. But on top of that, Hawke, the Champion of Kirkwall, is showing that they are corrupt enough to put their feelings for Anders above their duty to the city (I mean, some people point out that Anders should have been given a trial at least, and that is a good point, but Meredith is de-facto ruler and her call is that you, Champion, figure this out, so… you just did. You’re the judge and jury.).
And Sebastian leaves because he’s furious, but after the fact he’ll learn what happened to Aveline.
She either agreed with your decision because she cares for you or she’s dead. Corrupt as well or dead. Either way, Kirkwall has no one in power that Sebastian wouldn’t view as corrupt. And if Hawke isn’t Viscount there isn’t even anyone leading the city.
So, four years later, when Sebastian is in power in Starkhaven, he decides to rectify this as well as get Anders’s location from his associates still in the city so he is finally brought to justice, and so Sebastian chooses to annex Kirkwall.