上虞和余姚为越东望邑,相传虞舜(姚姓)避丹朱之乱至此,百官从之,后此地又成为虞舜后代的封邑。
春秋时为越国地,秦统一天下后置上虞县,设治于百官镇,此后两千余年之中,地名始终未变。
王莽建国元年,废上虞县并入会稽县。东汉建武初,恢复上虞县建置。永建四年分上虞县南乡置始宁县。此后上虞建置相对稳定,直到隋开皇九年,平定南陈,大肆废并天下郡县。上虞、始宁二县均被废入会稽县。
唐贞元元年,析会稽县东复置上虞县。长庆元年又废入余姚县,次年再度恢复上虞县,由于百官镇地界长期受曹娥江江潮影响,故而此次恢复上虞县将县治迁至丰惠镇。
丰惠是一座因浙东运河(四十里河)而兴起的古镇,为方便漕运一直没有建筑城池,仅围绕县衙修筑了一座衙城,周长只有一里九十步。经五代、两宋至元朝末年,海盗方国珍割据浙东。方才在上虞筑城。
城池东南平衍,西北因山为隍,西南跨长者山,周围十三里,高二丈有奇,厚一丈五尺。设城门五座:东门通明,南门朝阳,西门昼锦,北门丰宁,西南门金罍。通明、昼锦、金罍三门之侧还设有三座水门。
明洪武二十年,信国公汤和筑临山卫城和沥海所城,拆取上虞城墙砖石,仅留土城基。
嘉靖十八年,知县郑芸(福建莆田人)疏浚河道,并依旧城址重新筑城,高厚如故,稍增周长。改五座城门名为:东门启文、西门来庆、南门百云、北门业桂、西南门通泽,除原东、西、西南三座水门外,又在南门百云门东西增开二座水门。一座县城开五座水门,放眼江南也是不多见的,足见上虞丰惠水运之繁荣。此后倭寇曾三次兵临城下,都无功而返。
清顺治三年,南明侍御王完勋屯兵大岚山,两度攻破上虞县城。经此战事,城池沦为残破。至康熙八年,知县郑侨发动民力修葺一新。
清光绪二十四年,清政府与英商怡和洋行订立《苏杭甬铁路草约》。光绪三十一年,商办“浙江铁路有限公司”成立。宣统二年沪杭甬铁路宁波至曹娥段开工建设。加上现代化公路的建设,百官镇和曹娥镇成为杭州与宁波之间交通枢纽的重要节点。
解放后,上虞县迁治百官镇。1992年改设上虞市,2013年,改为绍兴市上虞区。