唐代以后,长江江心淤积出瓜洲,横亘在扬子津入江口前,致使漕船不得不绕行瓜洲,在长江风浪中损失严重。据《旧唐书·齐浣传》记载:“开元二十五年,迁润州刺史,充江南东道采访处置使。润州北界隔吴(吴,指扬州。后周改南兖州为吴州,隋改吴州为扬州)。江至瓜步沙(瓜洲)尾,纡汇六十里(30公里),船绕瓜步,多为风涛之所漂损。浣乃移其漕路于京口(今镇江)塘下,直渡江二十里(10公里)。”开元二十六年(738年)冬,润州刺史齐浣主持开凿了贯通瓜洲的伊娄河,使江南漕船渡江的距离从30公里缩短到10公里,大运河入江口也因此再次向南推移至瓜洲渡口。
唐宝历二年(826年),盐铁使王播为提高运河通航能力,主持修建七里港河,自城南七里港引江水进入运河,并改变了扬州城内运河的走向,提高了运河的通航能力。唐代扬州城以蜀冈上下分为子城和罗城,蜀冈上为子城,亦称“衙城”或“牙城”,为官衙府署所在地,水系发达;蜀冈下为罗城,是居民和工商业区,其西护城河即是今瘦西湖春台祝寿以北一段的前身,而位于城中的“保障河”则是今虹桥至小金山一段的前身,是唐代扬州罗城内的重要运输河道。
宋天禧三年(1019年),为避开扬州古城内水浅、船只难行的情况,发运使贾宗整理河道,拆毁龙舟、新兴、茱萸三堰,开扬州运河,于城外绕城东南开河接古运渠,自此运河主线避开了城市内部,由南门外向东再转向北,绕城而过至黄金坝与运河主线相接。从此古邗沟扬州城区段不再作为运河的主航道使用,逐渐淤塞。
宋天禧四年(1020年)江淮发运副使张纶于高邮北沿湖筑堤100公里,并在湖堤上用巨石砌建了10座石闸,以供湖水涨溢时渲泄,此为大运河有西堤之始。宋元祐间(1086~1093年),宝应地区修筑土堤200余里,修涵洞180座,石堰斗门36座。南宋绍熙五年(1194年)淮东提举陈损之新筑江都县至淮阴大运河大堤180里,名绍熙堤。邵伯湖东侧的大堤最早也形成于这次修筑。
元泰定元年(1324年),真州(即今仪征)疏浚珠金沙河(明景泰五年易名新坝河)。这样,仪扬河多了一条从新城通往长江的入江口门。其河位置在卧虎闸至旧江口之间,即今仪征翻水站上游引河。
洪武元年(1368年)修濬宝应县宋泾河,于宋泾河南建板闸1座,于北筑堰1道,与宝应湖隔开,运道改由宝应城西湖中行走,宋泾河不再作为运河主道。洪武九年(1376年),按宝应老人柏丛桂的建议