Better is a bit subjective here, since there are multiple factors to consider (even beyond those you list):
My recommendation is to run the code you intend to compress through several compressors (an automated comparison tool such as CompressorRater helps...), and choose based on the results - remembering to test, profile and compare the actual page load times afterward.
What you're usually interested in is the size after compressing with GZIP (you should configure your web server to perform the compression).
EDIT: since the original time this question was asked, 2 new minifiers have been released. They're both usually at least as good as, if not better than, the YUI Compressor.
Definitely check out Dojo Shrinksafe. It was reworked recently and apparently the performance has been improved.
Full disclosure, I'm behind this: http://www.toptensoftware.com/minime which does minification, obfuscation and a reasonable set of lint style checks. Currently it produces smaller output than Yui, not quite as good as Closure.
This is an old question and the Google Closure Compiler didn't exist then. I haven't used it yet, but it looks really good.
As a Mootools user, I notice that Mootools has replaced Dean Edwards' Packer by YUI Compressor. I also remember there was a discussion on Ajaxian.com where Julien (Compressor author) pointed out the areas where YUI Compressor did better. I used Compressor and have never seen any problem, but I have never studied to which produces fewer error when obfuscating.
There's also a port of the YUICompress for .NET (which includes a build task for TFS) on Codeplex.
©2020 All rights reserved.