Devizes has no railway station — the branch line closed in 1966 — so getting there without a car takes some planning. The most useful bus connections are from Swindon (about 45 minutes) and Trowbridge, with services running several times a day on weekdays and less frequently at weekends. Bath is roughly 20 miles to the west; Salisbury about 25 miles to the southeast; Avebury is 8 miles north on the A361.
By car, Devizes is straightforward to reach from the M4 (junction 15 for Swindon, then the A338 and A342) or from Bath via the A365 and A361. There is a large pay-and-display car park near the canal basin and street parking in parts of the town centre. The town is compact enough that you can walk everywhere once you arrive. For Caen Hill Locks, there is a small car park at the top of the flight on Rowde Road, which saves the 2km towpath walk from town.