Bloomfield is in northeastern Essex County, along the Connecticut River, which forms the state line with New Hampshire.
Vermont Route 102 follows the Connecticut River along the southeastern edge of the town, leading northeast to Colebrook, New Hampshire, and south to Guildhall, Vermont, while Vermont Route 105 leads west up the Nulhegan River to Island Pond.