As duas formas – imoral e amoral – existem na Língua Portuguesa.

Ou seja, ambas as expressões estão corretas, devendo, no entanto, serem usadas em diferentes situações, não são palavras sinônimas.

Imoral significa que contraria as regras da moralidade; que não é decente; devasso ou indecente.

A corrupção é de tal maneira imoral que não tem misericórdia.
É imoral o uso de apoios europeus a vítimas de incêndios para financiar instituições do Estado.

Amoral significa que não faz considerações morais, que é alheio a códigos morais; indiferente à moral.

Deve o liberalismo ser amoral?
Pessoalmente é refinado, amoral e elitista mas respeita os outros, não é imoral.

Ou seja, amoral não quer dizer que é “contra a moral”; simplesmente é indiferente a tal; basicamente é moralmente neutro.


Referências

Imoral advém da construção i + moral.
Amoral advém da construção a + moral.