Rakstos pirmoreiz minēta 1239. gadā kā pleskaviešu pilsēta. Pilsēta attīstījās ap pili. Iesākumā tā bija koka, bet 1387. gadā tika uzbūvēta mūra pils (1430. gadā), kuras drupas saglabājušās līdz mūsdienām. 1346. gadā pils izturēja Aļģirda, bet 1428. gadā - Vītauta aplenkumu. 1442. gadā Porhova tika pievienota Maskavijai, un zaudēja militāro nozīmi. 1609. gadā pilsēta zvērēja uzticību Viltusdmitrijam I, bet 1611. gadā to ieņēma zviedri Jakoba Delagardija vadībā. Pēc Stolbovas miera Porhova tika atstāta Krievijai.
Otrā pasaules kara laikā no 1941. gada 11. jūlija līdz 1944. gada 26. februārim pilsēta atradās Vācijas okupācijā. 1941. gadā vasarā kaujās ap pilsētu lielā mērā tika iznīcināta, saņemta gūstā vai dezertēja padomju 22. strēlnieku korpuss, jeb bijusī Igaunijas armija. 1943. gada 13. novembrī Porhovā notika diversija - kinoseansa laikā tika uzspridzināta ēka, kurā atradās vācu karavīri.