وقعت معركة ويليامزبرغ، والمعروفة أيضا باسم معركة فورت ماغردور، في الخامس من مايو لعام 1862 في المقاطعات الأمريكية الآتية: يورك، وجيمس سيتي وويليامزبرغ بولاية فرجينيا كجزء من حملة بينينسولا (Peninsula Campaign) للحرب الأهلية الأمريكية. وكانت أول معركة ضارية لحملة بينينسولا، حيث التحم فيها نحو 41 ألف اتحادي و32 ألف كونفدرالي في معركة حامية انتهت بانسحاب الكونفدراليين.
فعقب انسحاب الكونفيدراليين من يوركتاون هاجم قائد الفرقة العسكرية لجيش الاتحاد الجنرال جوزيف هوكر الخطوط الخلفية الكونفيدرالية بالقرب من ويليامزبرغ.
وهاجم هوكر (فورت ماغردور) - وهى عبارة عن حصن ترابي بارتفاع 30 قدمًا يمتد على الطريق بين يوركتاون وويليامزبرغ، فرجينيا - ولكن تم صد هجومه.
ووجه قائد الجيش الكونفيدرالي الجنرال جيمس لونغستريت هجمات مضادة هددت بالقضاء على الجناح الايسر لجيش الاتحاد، إلى حين وصول فرقة الجنرال فيليب كيراني والتي عززت من موقف الجيش الاتحادي، ثم هاجمت فرقة الجنرال وينفيلد هانكوك وهددت الجناح الايسر للكونفيدرالية واستولت على حصنين مهجورين، وباءت الهجمات الكونفيدرالية بالفشل. وواصل الجيش الكونفيدرالي انسحابه أثناء الليل باتجاه ريتشموند، فيرجينيا.