Concept Flow - Why asynchronous programming is needed
Start Program
Execute Synchronous Code
Encounter Slow Task?
Start Async Task
Wait for Async Completion
Async Task Done
Process Async Result
End Program
The program runs synchronous code first, then starts slow tasks asynchronously to avoid waiting and blocking, continuing other work until async tasks finish.