En 1867, Carlos se casó con la princesa Margarita de Borbón-Parma, una pariente lejana, hija del duque Carlos III de Parma y de la princesa Luisa de Francia, que le dio cinco hijos: