Asynchronous programming allows the program to execute tasks without blocking the main thread. In C#, this is done using async and await keywords.
await keyword pauses the method execution until the awaited task completes, without blocking the main thread.
1. What does the async keyword indicate in a method?
2. What is the purpose of the await keyword?
3. How does asynchronous programming improve performance?
4. Which is a benefit of async programming in GUI apps?
5. In the async file reading example, what does ReadFileAsync return?