Windows.MessageBox - это WinAPI MessageBox, Application.MessageBox является оболочкой для него. Dialogs.MessageDlg, однако, является формой VCL. Так что, если вы беспокоитесь о безопасности памяти или потоков, первые два могут быть более подходящими. MessageDlg OTOH более гибок и прост в использовании (ИМХО, конечно).