Here is a rundown of every file format you can use to distribute your software, along with their advantages and disadvantages. They are listed in ascending order of effectiveness.
In case you're wondering, 7-zip and StuffIt X are not listed here because nobody has decompressors for them. I wrote this list for the context of software distribution; the days of saying “You will need StuffIt Expander to open this file” are long over.
Disk image
Advantage:
Sandboxes the application: If it won't work from the disk image, it probably sucks
Disadvantage:
Confuses the average user; they typically run the application from the disk image, then encounter problems when they try to delete the image file or (much later) run a Sparkle update
Back in March, an Adium user had a problem trying to perform the Sparkle update. It gave her an error:

This wouldn't be so bad, except that she didn't know what a disk image was, so she assumed that she was not running Adium from the disk image (I imagine she thought something like “surely I'd know what that was if I was using one”). She looked up the troubleshooting instructions in the Adium help (good), then critically misunderstood them (bad) with the result that she moved her Adium 2.0 folder out of the Application Support folder. (Don't ask me to explain it. I don't know, either.)
All this ultimately resulted from the fact that average users, including her, don't recognize a disk image when they see it. They don't expect a file to act as a drive.
The same non-obvious nature results in other problems: specifically, the error message “The operation cannot be completed because ‘SurfWriter-1.0.dmg’ is in use”. This occurs when the user tries to delete the disk image file without unmounting it first. Users who encounter this message end up contacting us (usually asking “how do i uninstall it”). This is only natural, because who would expect that a file is mounted, or that a file can be in use in another file?
It was then that I realized that disk images are not as great for the average user as I had previously believed.
You may be thinking “well, just put a background image with an arrow to an Applications folder”. We did that. It didn't help this user.
The stories I heard from other developers suggest that people in general zero in on the application they want to use, without paying attention to anything else (e.g., arrows, help text, or symlinks). Besides, the questions I hear from the users via the feedback list suggest that users see the disk image window and think the application is already installed—they aren't looking for or expecting installation instructions, so your big arrow means nothing to them.
I suspect that installers are partly to blame for that: I don't know about Windows, but on Mac OS, installers would always open the folder containing the freshly-installed application, so that you could use it right away. I suspect that users mistake the disk image window for a freshly-installed-folder window.
Anyway, one solution to the tunnel-vision problem would be a “DRAG THIS OVER HERE” message in a big font—but that's no good, because you can't have localized background images. You'd have to pick one language, and hope that all your users know it, but anybody who doesn't know the language you chose wouldn't benefit from your nice obnoxiously big text. (On the other hand, this provides a second reason for unilingual builds: One disk image per language, with both the background and the application localized in that language only. Hmmmm.)
Another solution is a runtime check whether the app is running from the disk image. You'll have to be careful with wording here, though—you need to be 100% sure that you're running from a disk image, and write the alert text accordingly. There can be no vacillation like in the Adium alert box (which vacillates because it's caused by a simple permission failure, not an actual search for the disk image nature); it must be a statement, not a question. And of course, you must tell the user the remedy (copy the app, then run the copy, then eject the disk image file and never mount it again).
One last point: bzip2 compression (-format UDBZ) requires Tiger. Your disk image won't mount on any earlier version of the operating system; your users will think it's corrupt, since that's what the error message suggests, and they'll contact you with that assumption. This probably doesn't matter anymore, since the Omni Group's software-update statistics say that 98.4% of users are on Tiger (as of 2007-05-12), but if you still support users of earlier OS versions, you need to use zlib compression (-format UDZO) instead.
I bring this up because, having in mind my objections above to disk images, I released EasyMD5 as a zip archive. I did it this way because EasyMD5 is targeted at Adium users (specifically, those who have problems downloading Adium); experience has proven that I can't assume that an Adium user will know how to deal with disk images. Everybody knows how to handle zip archives (hello, Chris!), so I made it a zip archive.
I hadn't yet done the study of file sizes that I did and published yesterday. Now that I have, later today, I'll replace the zip archive with an internet-enabled disk image.
UPDATE 11:37: Added mentions of Paul Kim's proposal of a runtime check for the disk image nature, and clarified the Lazyweb request.
UPDATE 20:47: Updated to include comments from Sven-S. Porst and Michael Tsai.