Sông Bạch Đằng là cửa ngõ giao thông quan trọng phía đông bắc từ biển Đông vào đất Việt. Theo cửa Nam Triệu vào Bạch Đằng, địch có thể ngược lên và tiến đến thành Cổ Loa hoặc thành Đại La hoàn toàn bằng đường sông.
Trong khi đó, thủy triều lên từ nửa đêm về sáng, cửa biển rộng mênh mông, nước trải rộng ra hai bên bờ đến hơn 2 km. Đến gần trưa, triều rút mạnh, chảy ra rất nhanh. Như vậy, kế hoạch và việc lựa chọn chiến trường cho trận huyết chiến đã được quyết định là sông Bạch Đằng. Trận đánh chính sẽ diễn ra ở phía trong bãi cọc.
Bấy giờ vào cuối năm 938, trời rét, mưa dầm dề nhiều ngày. Quân và dân ta lặn lội mưa rét ngày đêm vận chuyển gỗ, dựng cọc. Hàng nghìn cây gỗ lim, sến, đầu được vạt nhọn và bịt sắt được đem về đây cắm xuống thành những hàng dài chắc chắn, đầu cọc hướng chếch về phía nguồn. Trong khoảng hơn một tháng thì mọi việc hoàn thành.
Theo dự kiến, Dương Tam Kha (con của Dương Đình Nghệ) chỉ huy đội quân bên tả ngạn, Ngô Xương Ngập (con trai cả của Ngô Quyền) và Đỗ Cảnh Thạc chỉ huy đội quân bộ bên hữu ngạn, mai phục sẵn, phối hợp thủy quân đánh tạt sườn đội hình quân địch, sẵn sàng diệt nếu địch chạy lên bờ.
Từ cửa biển ngược lên phía trên không xa, một đạo thủy quân mạnh phục sẵn do chính Ngô Quyền chỉ huy chặn ngay đường tiến lên của địch, chờ khi nước xuống sẽ đánh lại.