南军佩贝尔顿将军想乘北军立足未稳将他们赶到河去,派出近万人精兵出其不意地,向才登陆的北军发起了进攻,当时北军刚刚登陆,即无堑壕防护,也没有火炮掩护,只能仓促应战。战斗一直持续了12个小时,南军占据了有利位置,北军则不得不退守河边,形势对北军非常不利。
背水一战的北军士兵拼死抵抗,勇猛异常,一时难以攻克。约翰斯顿亲自带队冲锋,但却身负重伤,南军失去指挥,一时组织不起有效的进攻。夜幕降临,天下大雨,北军炮艇抵达战场,大量的炮弹打在了南军阵地,在此情况下,南军只好被迫撤回维克斯堡,北军取得了首场胜利。
渡河后的北军先攻占了附近的一个重要铁路枢纽站,切断维克斯堡与外界的联系,随后又占领了南军的补给基地杰克逊城。
最后,8万北军包围维克斯堡。5月中旬,北军开始攻堡,但都被据堡反击的南军击退。5月下旬,北军补充弹药后再次进攻,双方士兵都打得有来有回十分顽强,北军一度突破了南军数处防线,占领城郊的一个阵地,但被南军士兵用刺刀重新夺回,北军最终被南军击退。
维克斯堡城的防御工事太坚固了,北军数次进攻都没有成功,于是格兰特改变战术,对维克斯堡进行围城,耗尽城里的粮食和武器后,再迫使守军投降。在北军的团团围困下,南方的救援部队只能眼看着维克斯堡城而无能为力。
很快城中就弹尽粮绝了,人们甚至以蛇鼠充饥。佩贝尔顿于是向格兰特请求投降谈判,如果不答应,那就鱼死网破。