The court ruled on the state's first-in-the-nation law that bars employers from using state money to influence employees' views on unions in their workplace.
The justices decided by a vote of 7-2 that federal labor law bars California from regulating union-related activities.
The U.S. Chamber of Commerce, backed by the Bush administration, said the state was trying to silence employers from weighing in on organizing efforts. Federal labor law allows employers to be involved as long as they don't threaten reprisals.
Justice John Paul Stevens, writing for the court, agreed that the state ventured into territory that belongs to the federal government. Congress already has rejected "California's policy judgment that partisan employer speech necessarily 'interferes with an employee's choice about whether to join or be represented by a labor union'" Stevens said.
California contended that its 2000 law simply sought to ensure that the state doesn't subsidize an employer's pro- or anti-union activities, allowing California to maintain a neutral position in labor disputes.
In dissent, Justices Stephen Breyer and Ruth Bader Ginsburg agreed with the state that the law did not amount to the kind of regulation that is prohibited under federal labor law.
California's law has been followed by similar attempts in other states, including New York, which passed a more limited version. Union activists and pro-union lawmakers elsewhere have been waiting to see the outcome of the California case before deciding how to proceed.
The Chamber challenged the law in 2002 and won in federal court. A three-judge panel of the 9th U.S. Circuit Court of Appeals in San Francisco agreed, but the full 9th Circuit overturned the Chamber's position in 2006, determining that California's law was not pre-empted by federal statute.