Ostrava a fost o intersecție importantă a căilor comerciale dinpreistorie până astăzi. Descoperirile arheologice au dovedit că aria înconjuratoare a orașului a fost populată permament începând cu 25.000 de ani în urmă. Ostrava în sine a fost fondată în1267 și a primit drepturi de oraș în1279. Mult timp orașul a fost divizat în două părți, ale căror nume sunt și acum reflectate în diviziunea administrativă:Moravská Ostrava șiSlezská Ostrava. Până însecolul XVIII, ambele Ostrave erau orașe provinciale cu populații de aproape 1.000 de locuitori, mai alesmeșteșugari.
În1763, au fost descoperite zăcăminte mari decărbune negru, conducând la boomul industrial și valuri de imigranți noi în secole următoare. În timpulsecolului XIX, au fost construite mine în oraș și lângă acesta. De asemenea a fost deschisă prima oțelărie. Creșterea industrială a fost posibilă datorită finalizării construiriicăii ferateKaiser-Ferdinands-Nordbahn dinspreViena în1847. Ostrava a continuit să se dezvolte însecolul XX. Totuși, orașul – ca sursă importantă deoțel pentru industria militară – a suferit bombardamente masive în timpul celui de-Al Doilea Război Mondial, care au distrus o mare parte a orașului.
Ostrava s-a schimbat mult dupăRevoluția de Catifea (1989). S-a început procesul de restructurare a industriei – minele de cărbune au fost lichidate în1994, iar cea mai mare parte a uzinei metalurgice Vítkovice a fost închisă în1998. Industria grea este acum reprezintată doar de către oțelăria Mittal (în trecutNová Huť –Oțelăria Nouă). A fost revitalizat și centrul orașului – uzinele din cartierul Karolina au fost închise și demolate, pe locul lor construindu-se noi blocuri de locuințe, oficii, centre comerciale, o universitate și o biserică.