Mit der MessageBox hast du mehr Möglichkieten der Formatierung und die Beschriftung der Buttons richtet sich nach der Systemsprache, während sich der MessageDlg die Beschriftung aus einer Delphi
Unit holt, welche dann in der Sprache der ID beschriftet werden.
Desweiteren kann man eventuell auf die
Unit Dialogs verzichten, wenn man Messageboxen benutzt, da diese in der
Unit Windows deklariert ist, welche sowieso immer eingebunden wird.