Whats the difference between all the Difference between MSI GTX 970 models?

All companies do this. They are basically different levels of the graphics card. They have slightly different specs such as texture fill rates and memory bus sizes and clock speeds. They also may have a different number of video outputs different kinds of outputs.
 
Generally the bus sizes and texture fill rates (with the exception of clock and memory speed differences) are identical amongst the same model. Memory amount can differ, but in this case all GTX970 are 4GB (3.5GB effective + .5GB that is slower)

Base clock: This is the normal operating frequency. (When temperates become very high the card will run below this speed)
Boost clock: When temperature allows the GPU will run up to this clock speed.
Effective Memory Bandwidth : GDDR5 7000 is roughly what is found in Maxwell based chips. You will see slight variations here
Custom PCB and power delivery: The actual circuit board can either be a copy of the original Nvidia design or something the company makes themselves.
Custom cooling: Both your choices offer 'custom' cooling (Though Nvidia technically did not make a cooler for the 970 (some models have the cooler from the GTX980)

GTX970 4CD5T OC:
Base 1102
Boost 1241
Memory 7010
Millenium Edition is a green version of the red MSI Twin Frozr cooler:
Base 1140
Boost 1279
Memory 7010

Millennium edition is slightly faster.