Dopravní podniky města Ostravy vznikly roku 1949 spojením původní Společnosti moravských místních drah (tramvaje v Ostravě), Zemských drah (úzkorozchodné dráhy na Ostravsku, Karvinsku a Bohumínsku), Místní dráhy Ostrava – Karviná. Roku 1953 se k němu připojily ještě Vítkovické závodní dráhy (provoz dráhy ve Vítkovicích a Zábřehu). Dnes je DPO akciová společnost 100% vlastněná statutárním městem Ostravou.
První projekt parní tramvaje v Moravské Ostravě se objevil již v roce 1882, realizace se dočkal až projekt ze začátku 90. let 19. století. Provoz byl zahájen 18. srpna 1894 z Přívozu (od nádraží) do Vítkovic. Do konce století bylo zprovozněna ještě druhá trať, celá síť ale byla elektrifikována a 1. května 1901 byl zahájen provoz elektrických tramvají. Do roku 1907 byly vybudovány páteřní tratě (Přívoz nádraží – Moravská Ostrava město – Vítkovice a Ostravický most – Moravská Ostrava město – Svinov) ostravské tramvajové sítě. V roce 1926 byla na tuto síť připojena původně železniční trať Svinov – Klimkovice, která však byla ve 20. letech elektrifikována. Ve 20. a 30. letech proběhlo zdvoukolejnění nejvytíženějších úseků ve městě.
Tramvajová doprava DP
V roce 1960 byla zprovozněna trať do Poruby, 1969 do Martinova k novým ústředním dílnám. V 70. a 80. letech probíhala výstavba do nových sídlišť na jihu města. Nejnovějším úsekem je trať podél Místecké ulice z roku 1999.
Městské autobusy se v Ostravě objevily v roce 1929. 26. dubna byl zahájen provoz na první lince Masarykovo náměstí – Přívoz chemická továrna. Během první republiky bylo zřízeno několik dalších linek, nicméně autobusy nikdy nezískaly žádný velký přepravní význam (provozováno celkem 6 vozů).
Autobusová doprava DP
Velký rozvoj nastal až v 60. letech, kdy díky levné ropě se začaly masově vyrábět autobusy v Karose Vysoké Mýto.
Zahájení provozu trolejbusů v Ostravě je datováno k 9. květnu 1952, kdy byla slavnostně otevřena okružní trať vycházející z náměstí Republiky. Síť se postupně rozrůstala, větší rozvoj nastal v 70. a 80. letech (trať na Fifejdy, k dolu Heřmanice).
Trolejbusová doprava se v Ostravě nerozšiřovala od roku 1995, kdy byla zprovozněna trať do Koblova. Dalším z prodloužení trolejbusové sítě bylo až roku 2013 zprovoznění nové linky k obchodnímu centru Karolina. O tři roky později byl otevřen terminál Hranečník, na který vede nová trolejbusová trať po Těšínské ulici.
V plánu je stavba trolejbusových tratí přes Františkov a podél Havlíčkova nábřeží.