Then the next question would be, why would one be worn instead of the other?
I supposed that it is because the B Uniform and Dress Uniform are worn on different occasions. In "The Cage", only three people on the ship had the Command Color (What I called Color 1) Uniform. Even though in TOS there were many people wearing the Command Color, only Kirk had the (actually) green wraparound. I would suppose that Spock could have worn a green wraparound (also called a B uniform) in TOS, but he did not because he chose to wear science blue. This is supported by the fact that Kirk, Uhura, Sulu, Chekov and Chapel all have short-sleeved B uniforms in TMP. Maybe in TOS none of them were be high-ranked enough to be allowed to have the B uniform.
I'm editing to add the fact that the TMP uniforms actually did have a slightly different color for the B uniforms, suggesting that the slight variations in the TOS uniforms were okay by Star Fleet regulations.