From time to time I think it's wise to summarize the courses I have on Pluralsight. There is a link on the side you can use to get a free trial if you want to take any of these. Because I redo most of the courses each time a new version of C++ becomes widespread, there are quite a few courses with similar names. Here's a quick summary.
I update every course that needs it when a new version of C++ comes out. Recent editions like C++26 and C++23 didn't really change the sorts of things beginners learn (with the exception of std::print, std::println, and std::format) so if you're getting started, you can take any of these that sound good, and they will almost certainly work with the tools you're using.
- C++ 20: The Big Picture This is an overview covering "what is C++?" and "what is it used for?". If someone has suggested you learn it, start here to understand why you might want to. The title means that it's up to date to C++20, not that it only covers C++20. The actual content is equally applicable to older (and newer!) versions of the language.
- C++ Foundations This is the first course on a fast-paced path of short courses to get you started using C++ very quickly. It's completely updated for C++26 so it uses std::print, println, and format. Other courses in this path by me are C++ Foundations: Control Structures and Functions (loops, if/else, functions, even lambdas), C++ Foundations: Object Oriented Programming (declaring classes, using objects, constructors, inheritance, polymorphism, and operator overloading) and C++ Foundations: Memory Management (manual memory management and the rule of 5, plus how to not do anywhere near as much work by using std::optional, std::string, std::vector, or a smart pointer instead of rolling your own.) There are labs on this path too, and courses by other instructors.
- C++20 Fundamentals is more properly "the fundamentals of C++ including things that were introduced in C++20". This is an introduction to the ideas, syntax, and standard library. At seven and a half hours it can't cover absolutely every corner of the language, but it does cover what you need to call yourself a C++ programmer, and get started writing real code. This course assumes you already know how to program. If you don't, try Learn to Program with C++ 17 which covers the building blocks of programming languages like loops, functions, and objects while teaching the C++ syntax and library. Afterwards, you can take Fundamentals to fill in any gaps.
- C++20 Algorithms Playbook again covers up to and including C++20, so plenty of things that have been around for decades, but it does have a lot of content that is C++20 only, because ranges made such a big difference here. It's designed to convince you to stop writing raw loops and start using the many useful functions provided in the standard library. I demystify iterators and show you the benefits of using library code instead of rolling your own.
If you're on an older compiler and can't move, you should still take these courses. Whenever I use anything from C++20, C++23, or C++26, I highlight that, so you can just move past that part if you need to. For the algorithms course, Beautiful C++ 14: STL Algorithms is the older version that doesn't have all the ranges additions.
Some of my courses are really not version specific, but apply to particular kinds of work you might need to do.
Kate