The ease of use, the reliability and scalability of Undertow. The fact that it runs on a single server in most environments and does not require complex cluster setup, making it easy and fast to deploy. It can handle many concurrent requests and it's easy to configure. Undertow also has very good monitoring features to detect crashes without having to log in to the server. It can sometimes be slow, but that does not affect our project. Undertow allows us to manage many connections to our servers (in some cases more than 10,000) and it handles the complexity of Java's NIO. Also, it is easier to implement and deploy than other webservers. I like that it is open source and available for free. It is very easy to use and has many features. The only thing I dislike about undertow is that it doesn't have as many features as other web servers. For example, undertow does not support SSL/TLS encryption out of the box. You can do this with Apache Tomcat but you will need to recompile the server. I am using undertow with an Angular application. It works well with Angular. It allows me to serve static content from the same server as my Angular app.