Intense discussion of season 9 coming up. Please skip if you don't want season 9 (and some season 11) spoilers:
But did Gadreel really start out with just good intentions? I don't think he did, myself. Gadreel wanted to "redeem" himself by doing something, but that in itself wasn't a selfless act. He wanted to do it to show the other angels who had imprisoned him that they were wrong about him, and revenge peppered his actions in the first half of the season. How was killing a whole bunch of angels supposed to be in any way a good thing? So getting talked into that without any reservations at all is more than a little naive... it is bordering on complicit. Gadreel let himself be talked into it, because he wanted an excuse to do it and be on the winning side.
But the crappiness of the redemption story for me was less Gadreel and his change of heart than the lame retcons and having Sam behave out of character in order to play up Gadreel's change of heart. That and Gadreel's redemption took over the end of the season. Some of Gadreel's actions were excused with (paraphrase) "I don't think he felt evil, more misunderstood, but I was wrong, because he killed Kevin" which was a retcon, because Sam didn't even know he was possessed. So Sam ends up putting some of the blame on himself, and Castiel just listens and nods instead of pointing that out. Now some of that is likely because of Buck and Lemming ("King of the Damned" was their episode), but it was pretty huge stuff that didn't get fixed in that script. That, and Gadreel had some pretty mean intentions we saw in the beginning... from invading Sam's private thoughts, to erasing Sam's memories and giving him false memories, to threatening to kill Sam. Much of that was not instigated by Metatron or because Gadreel was duped. That was all Gadreel's decision to do to Sam, because he had an alternative host that was willing. He wanted Sam, because Sam provided him more protection... which was a selfish motivation, but again that wasn't addressed later on as to what Gadreel did to Sam personally. It was just waved away as Gadreel was "misunderstood" and he was instead elevated to "real friend" status and hyped as their only hope to defeat Metatron as part of his redemption. To me, it just felt unearned and lessened the role of Dean and Sam (especially) in the story. If there had been less "Gadreel was duped, he didn't mean to do bad" and more acknowledgement of Gadreel's self-serving behavior as part of his redemption, it would have been different, but there wasn't, so it fell flat for me.
Metatron on the other hand: yes, he was a crappy individual... and there was no sugar-coating or retconning of his behavior. He was an angel, and he acted like a typical angel, i.e. a big bag of dicks (TM Gabriel)... but then he had to live like a human being for a while. Metatron learned that human life wasn't always like in the books that he read or the movies he watched. There wasn't always an exciting story or quest. Sometimes it was just hard and day by day. He ended up having to scrounge in a dumpster for food - which he ended up giving to a hungry dog instead. And somewhere along that journey, Metatron learned to appreciate what human beings did as them personally and not just as a good story. As he told Chuck, he knew that they screwed up, but also appreciated how they tried. For me that was an interesting redemption story. An angel who technically knew all about humans, but didn't truly understand any of it until he had to live it for himself. Which is why I thought he made a good choice as the one to talk to Chuck (who also didn't technically understand his own human creations.)
And when Metatron sacrificed himself, he did so knowing that it wouldn't make up for what he did. He did it because he truly thought that the world was worth saving. He wasn't doing it to try to redeem or prove himself. He was trying to help save the world. While still being a weasel to the end and not by having to be given some fake "friend" status. Or by taking away from Sam and Dean's part in the story. In my opinion, Metatron's redemption was much more earned, no retcons of his behavior or talking him up scenes necessary. It was more a natural progression of his character, and it was given over 3 seasons to develop.
That's why I thought Metatron's redemption arc was better than Gadreel's. It wasn't that I thought Metatron was a better being - though he was a more interesting character for me - it was more that I thought his story arc was much better in terms of construction and the way it played out.