I think you’re mixing things up with that statement. Spring Webflux uses netty under the hood, but in terms of the APIs they are very similar. The traditional annotated controller still exists, but I suppose you can now make use of the functional declaration of routes. While I wouldn’t sing the praises of RestTemplate, the WebClient isn’t particularly nice to test. Also without kotlin, you’re dealing with reactive types everywhere that you use the client.
Now if your goal is to simply say execute multiple tasks at once, then yes you might like a coroutine based async solution to say the CompletableFuture API. Although, there’s not a huge difference in complexity there. One thing I will say about coroutines is they do a nice job of unwrapping reactive types so that you can more or less write imperative code if you’re happy with having a “colored” API. I personally like working with Spring Webflux and I found coroutines make things much easier. However, I would say for most use cases it is unnecessary and pushing for its use in a team without the requisite familiarity is probably not the right thing to do. Also, there is no reason you can’t use coroutines in normal Spring Boot if a particular use case lines up. I have used them to parallelise calls to downstream microservices for example.