C++17 introduced updates to both the C++ language and standard library. For the language, there were around 45 modest proposals that mostly solved frustrations from prior standards. Significant updates to the library included new vocabulary types like std::optional and std::string_view. C++17 also added features like structured bindings, if constexpr, and lambda improvements like constexpr lambdas and capture of *this. The filesystem library was standardized to provide OS-abstraction for file/directory operations.