You can write asynch code to look like synchronous code so you can follow the flow. You can also do things like await in for loops which is also the preferred flow a lot of times.
You can use several async calls in order without making a pyramid and with much less code than promises or chaining callbacks across separate functions.
In short its cleaner code.