Krnov (; , new-Polish: Krnów, old-Polish: Karniów, ) is an Upper Silesian town in the northeastern Czech Republic, in the Moravian-Silesian Region, the District of Bruntál, on the Opava River, near the Polish border. From 1938 to 1945 it was one of the municipalities in Sudetenland.