Located east of Pestpeswick Inlet and west of Jeddore Harbour, Musquodoboit Harbour is a 10 km long estuary measuring about 2 km wide at its southern end (the mouth) and narrowing to less than 100 m wide at the northern end where the Musquodoboit River discharges into the harbour.
The mouth of the harbour is framed by Whale Point and Collins Head on the western side, while Jeddore Cape delineates the eastern side. Martinique Beach Provincial Park is situated on Martinique Beach, a 2 kilometre broad natural sand barrier beach that narrows the harbour mouth on the western side, extending east from Whale Point.
The harbour contains numerous islands and the western shore is largely undeveloped, owing to the lack of road access. The eastern shore of the harbour is served by a local road which connects the community of Musquodoboit Harbour at the northern end with Ostrea Lake and Pleasant Point at the southeastern end.