The legacy support package was the first version of the software written. Once that version existed and customers were providing feedback on it , Mathworks found that a different way of arranging the interface would be better, so Mathworks wrote a new version that is not compatible with the old version. The new version required some internal changes that were not available at the time that the original version was written. Because some people still have code written for the old version, Mathworks continues to make the old version available as the "legacy" code.
There is a separate support package for MATLAB itself to communicate with Arduino, compared to Simulink communicating with Arduino. Simulink has a block-oriented interface that MATLAB itself does not use.
