Kefka by far. He cracks the best jokes, while still having the complete disregard for human life that defines a good villain. Plus, the laser beam that can strike anywhere on the whole world is so cool.
second place would be sephiroth, cuz he has a really well-developed backstory, and his abilities are cool as well. How much precision does it take to explode the sun to *exactly* halfway between him and you?
most of the other bosses are incredibly generic, either "I want to take over the world for no reason" or "I want to destroy the world for no reason." Necron is the worst cuz you've never even heard of him until 2 seconds before you fight him. They should have stuck with that guy who you are fighting for most of the game (sorry forgot his name). And Ultimecia????? what kind of boring name is that? X-Death.... oooh, that's creative.