Thus: when Angelus is trying to end the world, Spike is trying to save it. When Xander is busy making threats and lying, Spike is saving Giles and keeping his promises. When Riley is out paying lady vamps to bite him, or sulking because Buffy’s had the temerity to put her own need to be strong ahead of his need to feel manly and protective, Spike is telling her the truth and offering quiet, undemanding support. When Willow and the others are smothering the newly resurrected Buffy, Spike gives her an out. And when absolutely everyone betrays her at the end of S7, it’s Spike alone who keeps faith with her. From villain to invalid to lovelorn drunk; from glowering menace to chaotic, defanged outsider; from frenemy to lover to ex; from assailant to madman to stalwart, both Spike’s personality and his relationship with Buffy undergo the most development in the whole show. He’s done some truly awful things, but when it really matters and everyone else has abandoned her, it’s always Spike, and Spike alone, who’s there to watch her back.
*I say arguably, because Angelus’s crimes are pretty horrific, too, and YMMV in terms of which you consider to be worse overall: there’s no sliding scale for evil, no definitive catalogue with which to determine their heinousness objectively.