From my freshman years around 2005, I vaguely remember that multi-thread GUI apps were:
- a way to avoid blocking the UI,
- tool to gain some perf. on new fancy multi-core processors,
- making the code much harder to read and debug, which often makes them a victim in a cost-benefit analysis.