Respuestas:
La principal diferencia es que Helm puede mostrarle terminaciones de múltiples fuentes (por ejemplo, archivos, buffers, marcadores, etc., dependiendo de cómo lo configure). Para que no tenga que invocar diferentes comandos para abrir diferentes cosas, puede acceder a ellos desde un comando común.
Además, ido no es muy bueno para terminaciones donde los elementos posibles son largos, porque el minibúfer no es muy adecuado para mostrar elementos más largos.