"Odin is generally unreliable and only runs on Windows systems. Furthermore, Odin is leaked Samsung software that is not freely available or well understood by the community." - From the Heimdall website.
Heimdall is open source and cross-platform, which makes it more reliable since the developers and the community actually know exactly what it does. It also has a cleaner interface.
That said, I've never used Heimdall because when I used to flash my old Spica, it wasn't released and on my Galaxy Nexus, even though there is a Download Mode, I know enough to manually flash through fastboot...which is the official method.