Dvinský záliv (rusky Двинская губа – Dvinskaja guba) je záliv na jihovýchodě Bílého moře u ústí Severní Dviny na severozápadě Ruské federace. Leží naproti Kandalakškému zálivu a od Oněžského zálivu je oddělen Oněžským poloostrovem. Je dlouhý přibližně 93 kilometrů a široký přibližně 130 kilometrů. Na jeho konci, v deltě Severní Dviny, leží města Archangelsk a Severodvinsk.