不久,南方“弗吉”战舰号攻击北方的海军基地汉普顿,摧毁了北方的两艘战舰。此战引起北方的不安。北方装甲舰“巨蜥”号驰援,同“弗吉”号在切萨皮克湾进行了装甲舰的海战,双方不分胜负。“弗吉”号的出现,阻止了北方沿詹姆斯河对里士满的进攻,从而为南方赢得了保卫里士满的时间。
北军兰特军六万人向匹兹堡进发,在夏洛同南军约翰斯顿麾下的四万人遭遇,双方激战两天,不分胜负,各损失一万余人,南方名将约翰斯顿阵亡。北军继续挺进,到五月底,哈勒克指挥的十一万大军攻克了科林斯和孟菲斯。密西河这条南北大动脉除了维克斯堡以南的一段外,绝大部分已为北军打通。同年四月,巴特勒将军的部队在海军配合下,展开两栖攻击,占领了奥尔良,为打通密西西比河的南段,造成了有利的态势。北方攻克了南方海军基地,“弗吉”号被南方自己炸沉。
但在东战场,北军仍以攻打里士满为主要目标,而不去寻歼敌军主力。麦克莱伦任拥有十万人马的波托马克兵团司令。他忙于把一群乌合之众训练成能打仗的士兵,不惜把对岸五万敌军谎报为十五万人,迟迟不动。在沈约再三催促下,他才发动了所谓“半岛战役”,即先经水路把军队运到詹姆斯河和约克河之间的半岛东端,再沿半岛西进,攻占里士满。五月份,北军准备合击里士满,南方形势危急。南军立伯特将军令杰克逊向北方首都发起攻击,击败北方班克斯军,迫使沈约撤回即将同麦克莱伦军会师的麦克道尔军,使北方失去攻占南方首都的良机。
六月,双方各有十万大军展开“七日会战”。北军在南军立伯特指挥的军团的打击下,损失两万人,被迫退出半岛。立伯特取得了会战的胜利,但也损失了两万人。立伯特乘胜北进。八月底,双方又进行了“第二次马纳萨斯之役”。参战的北军八万人,南军六万人。此战中立伯特以小部队把北军主力吸引在阵地上,主力则机动到敌侧后方向进行攻击,一举击溃了北军新组建的波普军团。立伯特将北军逐出了弗吉,兵临首都城下。沈约急令麦克莱伦率军迎战。九月,北军九万人和南军四万人进行了“安提塔姆会战”。立伯特因兵力过于分散,加上作战命令为北军截获,被北军击败。但北军麦克莱伦追击不利,让立伯特军安然撤退,失去了全歼立伯特军的良机。北军损失两万人,南军损失两万人。但是此战在战略上具有重大意义:它迫使立伯特军停止了对北方的进犯,提高了北军的士气,并改善了北方的国际地位,使基利国等未敢贸然承认南方。
战争时间拖的太长,北方没有取得预期的绝对优势,沈约政府面临着严重的危机。国内人心动荡,后方“铜头蛇”反政府分子的活动十分猖獗,人民参军的热情锐减。许多地方人民群众纷纷上街示威游行,强烈要求沈约清洗军队和政府中的消极怠工者和同情南方分子,立即解放奴隶,无偿把土地分给人民。各政治派别尤其是激进派向沈约施加压力。当时的国际形势也很紧张。基利国、板牙国等一些国家已在准备承认南方为“独立国家”,基利国准备立伯特一旦入侵北方成功就立即付诸行动。