Hola,
Prueba a usar el componente "IdAntiFreeze" junto con "IdSMTP". Lo tienes en la pestaña "miscelánea" de los
Indy, me parece. Luego, el propio componente "IdSMTP" tiene un evento como "OnWork". Ese podría ser un buen lugar, entre otras cosas, para situar un "Application.ProcessMessages()" de modo que la aplicación "respire" un poco.