Die älteste Siedlung auf dem Gebiet der heutigen Stadt warSolza, das am 25. Mai 1223 in einer Urkunde des Breslauer BischofsLorenz erstmals urkundlich alsecclesia de Sale, eine Kirche im Besitz derPrämonstratenserinnen inRybnik, erwähnt wurde. Im 13. Jahrhundert bestanden schon am wahrscheinlichsten die DörferCula (Staré Město?) undRay, die aber erst imLiber fundationis episcopatus Vratislaviensis aus zirka 1305 erstmals erwähnt wurden. Im gleichen Dokument wurden die neue Stadt am rechten OlsauferFrienstad in Ray, sowie die DörferCarwina undBertholdi villa (Darkov?) benannt. NachWalter Kuhn, einem eifrigen Forscher des Deutschtums imTeschener Schlesien, war Freistadt im Mittelalter das Zentrum einer deutschenSprachinsel, die acht Dörfer (außer Doly, alle heutige Stadtteile, sowieDětmarovice,Dolní Lutyně undVěřňovice) umfasste.[2]
Das alte Karwin (heute entvölkerter StadtteilDoly) war 1880 noch ein Dorf imHerzogtum Teschen, hatte aber fast 5000 Einwohner. Es gehörte zumBezirk Freistadt (Fryštát, jetzt ein Stadtteil von Karviná) und lag an derKaschau-Oderberger Bahn. Es hatte ein Schloss und eine Brauerei und war damals schon ein Zentrum des Steinkohlenbergbaus und derKoksherstellung. Es gab in den 1890er Jahren eine schwere Dynamit- und Kohlenstaubexplosion – ein Unfall, der rund 250 Menschen das Leben kostete.
1869 wurde Freistadt mit Sitz einer Bezirkshauptmannschaft desBezirkes Freistadt inÖsterreichisch-Schlesien. Sie hatte 1880 2244 Einwohner. Die Stadt war auch ein Sitz der Grafen von Larisch, die dort ein Schloss und Gestüt besaßen.
Genau gegenüber am linken Ufer der Olsa liegt der Stadtteil Lázně Darkov(Bad Darkau), der wegen seineriod- undbromhaltigen Wässer seit 1870 ein beliebtes Kurbad war. Nach der Heirat der GräfinFranziska Larisch von Mönnich mitErnst Rüdiger Starhemberg im Jahre 1898 kurierten sich dieStarhemberger oft in Bad Darkau. Später wurde der Ort mit Roy vereinigt und ist auch alsBad Roy-Darkau bekannt. Im Oktober 1938 kam die Stadt wie auch das gesamteOlsagebiet an Polen.
Während der deutschen Besatzung wurden Karwin, Bad Darkau, Freistadt, Roy und Altstadt 1944 zur StadtKarwin-Freistadt vereinigt. Nach demZweiten Weltkrieg war Fryštát zunächst wieder eigenständig, bis es 1948 erneut nach Karviná eingemeindet wurde. Es ist seither das eigentliche Zentrum der Stadt und vonPlattenbausiedlungen aus den 1970er und 1980er Jahren umgeben. 1975 wurdeLouky nad Olší als der letzte Stadtteil eingemeindet.
Nach demOderhochwasser 1997 wurden die Deiche erhöht. DieDarkovský most, die einzige direkte Brückenverbindung zwischen den Stadthälften, wurde gleichermaßen erhöht, kann seitdem aber nur noch von Fußgängern und Radfahrern benutzt werden.