"It is high time for Europe to have a distribution ratio based on solidarity. Switzerland will join it," President Simonetta Sommaruga said during a meeting with her Austrian counterpart, Heinz Fischer, in Vienna.
Sommaruga added that "more can be done" for the thousands of refugees trying to reach Europe's southern shores by boat.
Both Switzerland and Austria insisted the influx of migrants should not be borne alone by the countries where they first arrive — Italy, Malta, Cyprus and Greece.
Sommaruga said Switzerland had already decided to take in another 3,000 Syrian refugees in addition to the 10,000 already in the country.
"There is no national solution," she said. "We need European answers."
A non-member of the EU, Switzerland is nevertheless part of the Schengen agreement, which enables the free movement of people between a large number of European countries.
The death of more than 1,200 illegal migrants in the Mediterranean last month has sparked strong debate among European nations on how to deal with the situation.
The European Commission, the EU executive, is due on May 13 to present a migration policy that will include proposals to make legal economic immigration to the EU easier, and to set refugee quotas for all member states.
It will go before EU heads of government and heads of state at their June 25-26 summit.
The last attempt to change the rules, in 2013, failed when 24 of the 28 EU member states voted against.