Crisis Core had a great ending, but you knew what was going to happen -- in Final Fantasy 7, the protagonist of CC, Zack, is already dead. So, you kind of know that this character is going to die the whole time, but the game does a fucking fantastic job of getting you attached to him, to the point where you're kind of against the idea of him dying; something that you already know is a fact.
So when you do reach the end, you come up against a 'supposed to lose' fight against endless wave after wave of soldiers, but while this kind of mechanic is generally used as a cheap shock tactic in a lot of games, it's different here.
First, you'll probably KNOW that you're supposed to lose before you get into it, because chances are you've played FF7. But you don't want to lose, because you know what will happen to Zack, and you know that this game you've enjoyed is going to end... so you fight, and you fight, and you fight, harder than you've ever fought against any 'real' encounter in the game because somehow, now, the stakes are so very real.
Even the mechanics change to make this fight special. You spin slots every few turns to summon aeons to help you, but the slots all line up on characters that Zack has met and formed relationships with, throwing a few frames of flashback on the screen at you before executing their summon. It really makes you think about the whole game and gives the ending a bit more oompf.
And when that ending does come... jeez. You've almost given up. I actually felt exhausted, emotionally, by the end of that fight. It was so intense. Fucking genius game design right there.