Up to 5,000 people took to the streets in Prague and four other towns on the country's national day. In the capital, riot police intervened to separate anti-refugee protesters from around a hundred people staging a counter-demonstration.
Wednesday's rallies in major cities across the country were organized by fringe political groupings and parties that exploit anti-refugee and anti-Muslim sentiments.
Lutz Bachmann, the founder of Germany's anti-Islam PEGIDA movement, was among the speakers to address the crowd in Prague.
The biggest demonstration was in Brno, the country's second-largest city, where more than a thousand people turned out. Other protests in Prague, Liberec, Usti nad Labem and Ostrava each mustered a few hundred protesters.
No significant incidents were reported. The holiday celebrates the creation of Czechslovkia in 1918.
More than 700,000 migrants have arrived in Europe this year, most from Syria, Iraq and Afghanistan, in the continent's worst refugee crisis since World War II.
The influx has caused tensions between EU members and given a boost to far-fight anti-immigration groups across the continent.