Earlier quoted context omitted.
Depends on what you mean by async programming. If you literally mean async and await as available in Haskell, Rust, C#, JS, Python etc. Then no that's definitely not the same thing as windows 3.1's cooperative multitasking.
The async and await is just syntactic sugar that makes you more addicted to it.
Polymorphism is just sugar over type inspection and branching.
Recursion-free function calls are just sugar over variable renaming and text movement.