This revised second edition gets straight to the core of C++20, the most modern revision of the ISO standard. A new 'Coroutines' chapter introduces a new language feature that lets users express functions that can suspend execution. The 'Iterator' chapter has been replaced with a new chapter called 'Ranges,' the new library that largely replaces iterators in daily programming and allows users to interact with sequences of objects. The added 'Modules' chapter shows how to create and consume library code. Printf has also been replaced with std::format and there are numerous updates throughout.