Las clases adicionales agregadas en Bootstrap v4.4 en adelante permiten contenedores que tienen un 100% de ancho hasta un breakpoint particular. v5 agrega un nuevo breakpoint xxl.
En bootstrap existían dos clases para contenedores: .container y .container-fluid. La diferencia entre ellas estriba en que la primera establece un ancho máximo concreto para el contenedor según el tamaño de la página (por ejemplo, para tamaños pequeños sm es de 540px o para pantallas extra grandes lg es de 1140px) mientras que el contenedor fluido siempre establece el ancho máximo en el 100%, de modo que se adapta a la pantalla, pero puede crecer mucho en algunos casos.
Bien, en Bootstrap 4.4 en adelante añaden unas nuevas clases de contenedor a las que le podemos añadir el nombre de un ancho (sm, md, lg, xl, xxl), de modo que se comportan como un híbrido de las dos anteriores: muestran un ancho máximo del 100% hasta alcanzar la medida indicada, y luego mantienen un ancho máximo fijo.
Por ejemplo, .container-sm tendrá un ancho máximo del 100% para pantallas pequeñas (hasta 576px) y un ancho fijo de 540px para las que lo superen. Y en el otro extremo .container-xxl tendrá un ancho máximo del 100% hasta el tamaño extralargo (hasta 1400px) pero limitará el ancho a 1140px a partir de esas medidas del viewport.
Esto es estupendo porque nos evita tener que estar limitando el ancho a mano en nuestras hojas de estilo si solo usamos el contenedor fluido. Obtenemos un comportamiento híbrido de los anteriores que nos permite tener contenedores fluidos limitando al mismo tiempo su ancho máximo.