Explore the world of C++20 coroutines in this 58-minute conference talk from code::dive 2019. Gain insights into what coroutines are, their practical applications, and potential pitfalls in C++ programming. Learn how coroutines can enhance efficiency and code clarity in heavy-duty applications. Discover the speaker's journey from networking problems to coroutine solutions, understanding the differences between subroutines and coroutines. Delve into coroutine implementation, including tasks and generators, and explore their composability. Examine how coroutines can revolutionize asynchronous code writing. Led by Marcin Grzebieluch, a Software Architect with expertise in Linux, distributed computing, and C++, this talk provides a comprehensive introduction to C++20 coroutines for developers seeking to leverage this powerful new feature.