Rakstos pirmoreiz minēta 1239. gadā kā pleskaviešu cietoksnis, 1387. gadā (1430. gadā) uzbūvēja mūra pili, 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ā Porhovu pievienoja Maskavijai un tā 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 Porhovu atstāja 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ā vasaras kaujās pilsētu izpostīja, gūstā padevās padomju 22. strēlnieku korpuss jeb bijusī Igaunijas armija. 1943. gada 13. novembrī Porhovā notika diversija - kinoseansa laikā uzspridzināja ēku, kurā atradās vācu karavīri.