陈瑄,早年随父亲任职成都,因是武臣之子,得以舍人的身份随侍大将军蓝玉,深受器重,后袭父职为成都右卫指挥同知,以善射着称,多次随蓝玉征讨南番、越巂。建昌土司月鲁帖木儿发动叛乱,陈瑄随军讨伐,逾梁山,平天星寨,连破宁番卫诸蛮族,而后又征讨盐井,进攻卜木瓦寨。陈瑄所率中军被叛军重重围困,身先士卒,下马步战,接连射杀叛军,足部受伤后裹伤继续迎敌,战斗从巳时一直持续到酉时,终于将叛军击溃。
陈瑄从征叛番贾哈剌,从小道出奇兵,趟过打冲河,并搭建浮桥,接引大军渡河,他下令拆掉浮桥,以示破釜沉舟,结果连捷。后来,陈瑄又会合云南军征讨百夷,因功升任四川行都指挥使司都指挥同知。陈瑄升任右军都督府都督佥事,统领水师,镇守南京江防,以抵御燕军,但他却在燕军抵达浦口时,主动率水师迎降,使得燕军顺利渡过长江,攻入金陵。不久,燕王朱棣在南京称帝,是为明成祖。
明成祖大封功臣,陈瑄因有“默相事机之功”,仍任右军都督府都督佥事,加授奉天翊卫宣力武臣勋号、特进荣禄大夫、柱国,封平江伯,食禄一千石,子孙世袭指挥使之职。陈瑄被任命为总兵官,总督海运,他当年便从海上向北京、辽东输运粮食四十九万余石,以供应两地兵饷,后又在直沽建百万仓,修筑天津卫城。在督理海运期间,陈瑄让漕卒与海上岛民进行互市,公平交易,既利于岛民,又便于海运。
陈瑄与安远伯柳升一同率水师巡海,结果在青州海面遇到倭寇侵掠沙门岛,他当即迎击倭寇,一直追击到朝鲜国境内的金州白山岛,将倭寇船只全部焚毁。明成祖命陈瑄与丰城侯李彬统领浙江、福建两地水师,剿捕海寇。后因海水涨潮漫堤,海门至盐城境内有一百三十里地受灾。陈瑄又受命修筑扞潮堤,率四十万士卒筑堤一万八千余丈。陈瑄上奏道:“嘉定县濒海之地,正当江流冲会,其地平衍,无大山高屿可恃。海舟于此事故频发,常有触礁、搁浅。”他征得明成祖的同意,在嘉定县的青浦筑成方圆百丈、高三十余丈的土山,并于山上立土堡作为航海标识,以提醒过往海船避让。明成祖将土山赐名为宝山,还亲作碑文记述此事。
明成祖因会通河全面通航,决定停止海运,改走内河漕运,仍由陈瑄负责,陈瑄建造浅船二千余艘,起初运输两百万石,后逐渐增加到五百万石,使得国用得以富足。当时,江南漕运沿运河抵达淮安后,须转陆运翻过河坝,再经淮河抵达清河,其过程损耗巨大。陈瑄采纳故老的建议,自淮安城西侧的管家湖起,开凿二十里河渠,命名为清江浦,将湖水导入淮河,并修筑四座闸门,以适时泄洪。他还沿湖修筑十里长堤,以提高船只运输能力,使得漕船可以直达黄河,节省的费用不可计数。陈瑄督理漕运三十年,针对漕运事务实行很多整改措施,精密而有远见,可谓“举无遗策”。
明仁宗继位,陈瑄上疏仁宗,提出七条经国利民的建议:重国本:南京乃是国家根本,应严整守备力量;择贤良:推举人才应予核实,不能只论资格;挑选公正的朝臣分巡天下,考察政治得失;苏民力:湖广、江西、浙江等地距北京较远,百姓输运粮饷往返几近一年,有误农作。可让百姓运至距离较近的淮安、徐州等处,再由官军接运至北京。另外,快船、马船所载粮草不过五六十石,每船只用官军即已足够,无需召集百姓前来听候;兴学校:府州县学的教员多不称职,应予考核,不称职者予以黜落;挑选俊秀之才补为生员;准许军中子弟入学读书;整军伍:应核实军伍,年老患病者由子弟替代,逃亡者予以追捕,绝嗣的军户验明后加以除籍;谨边防:开平等地乃是边防要地,守兵虚弱,粮食不足,应挑选、训练精锐之士,加强守卫,同时屯田自给;专漕运:漕运官军年年运粮北上,返回后还要维修漕船,终年劳苦。应禁止所属卫所对他们加以繁多的徭役。
明仁宗采纳了陈瑄的建议,命有司迅速执行,不久又赐陈瑄铁券,并允许他的子孙世袭平江伯爵位。有朝臣对此不以为然,认为陈瑄只是老生常谈,仁宗驳斥道:“武臣能言及此,已是非常难得,况且现在都害怕出言获罪,更应对他加以奖掖。古人尚知千金买马骨,我这么做岂不是远超古人。”
明宣宗继位,仍任命陈瑄为总兵官,驻节淮安,陈瑄不但督理漕运,还兼管淮安的地方事务,抚辑军民,所领官军悉听节制。陈瑄奏请朝廷,打算征发十二万劳力,用半个月的时间疏浚济宁以北长沟到枣林之间的淤塞河道。明宣宗念及他长年辛劳,命尚书黄福前往一同经理。陈瑄再次上奏:“每年运粮动用十二万军人,连年劳苦。请在苏州、松江等府以及江西、浙江、湖广等地另外签发民丁,并在士兵较多的卫所签发士兵,共二十四万人,分番轮流运输。另外,江南的百姓,运粮到临清、淮安、徐州,往返一年,耽误农作,而湖广、江西、浙江以及苏州、松江、安庆的士兵,每年驾空船到淮安运粮。如果让江南的百姓拨粮食给附近的卫所,由官军运送到北京,根据里程付费并付给耗米,这样军民都会方便。”明宣宗遂命黄福和侍郎王佐加以执行。从此,漕运由改为兑运。
陈瑄在淮安总兵官任上病逝,终年六十九岁,明宣宗追封他为太保、平江侯,赐谥号恭襄。江南百姓因陈瑄疏浚河道有德于民,在清河县为他建立祠堂。