Creo particularmente que la definicion de la rivalidad entre Swing y SWT se ve determinada inexorablemete por el proyecto mismo, es decir, por su naturaleza y por sus necesidades. Todo proyecto aspira a conseguir buena usabilidad de usuario final y velocidad en la interfaz grafica de usuario, pero he aqui el dilema:
-SWT es mas rapido que Swing; en teoria esto tiene sentido debido a que SWT esta escrito en codigo compilado.
-Swing tiene mas funcionalidad; los ejemplos más comunes citados son la capacidad de poner un gráfico y el texto en un botón y una mejor funcionalidad de la tabla.
Por lo tanto, la eleccion de que usar depende de que estamos dispuestos a sacrificar, mejor aun, que esta dispuesto a sacrificar el proyecto para obtener beneficios. Es cierto NADA es GRATIS, hay que sacrificar algo.