Multiple I²C slaves with different addresses VS. using a multiplexer
From a programming viewpoint:

Most likely all your magnetometers are handled by one single thread. Favourably, reserve one I²C bus for this thread, so you can easily implement isochronous sampling. That will make it simpler to implement a time-discrete closed-loop control.

The other I²C can then be controlled by another thread and collects all the other sensors you might need.