確かに、GUI の根幹には、永久のイベント(メッセージ)ループがある。
イベントドリブン

ずっと、ユーザーからのマウスイベントなどが、キューに入るのを待っている。
キューにイベントが入ると、それを処理する。
それを永久に続ける

一方、CUI では、そういうイベントドリブンは聞かない。
マウス操作で、何かをするというのも聞かない。
Ctrl + C を押して、割り込み処理を発生させることはできるが

でも、こういうアプリの終了などのソフトウェア割り込みも、イベントループで拾うけど