Shortstop Tim Anderson is joining the Marlins on a one-year, $5 million contract after spending eight seasons with the White Sox.