Olá, Wesley. Se você está falando do onclick, bem, ela é apenas uma propriedade. Como todas as propriedades de objetos, se escrevermos mais de uma propriedade, ela será sobrescrita. Já o método addEventListener() anexa um manipulador de eventos ao elemento especificado e pode ter vários manipuladores de eventos aplicados ao mesmo elemento. Ele não substitui outros manipuladores de eventos. Ambos estão corretos, mas nenhum deles é "melhor". Quanto a segurança do código, não há muita distinção. Geralmente usa-se addEventListener() porque com ele pode-se usar várias funções, já que no onclick vai estar limitado apenas aquela função.