It is syntactical sugar built over promises, returns the result wrapped in a promise. The async keyword is used to define an asynchronous function. It ensures that the function returns a Promise and allows the use of the await keyword inside the function. async/await is built on top of Promises. It provides a more readable and synchronous-like syntax for dealing with asynchronous code, making it easier to work with Promises.