Bacalar (español: (escuchar)) es la cabecera municipal y la ciudad más grande del municipio de Bacalar (hasta 2011 parte del municipio de Othón P. Blanco) en el estado mexicano de Quintana Roo, a unos 40 kilómetros (25 mi) al norte de Chetumal, a 18° 40′ 37″ N, 88° 23′ 43″ O. En el censo de 2010 la ciudad tenía una población de 11,084 personas. En ese momento todavía formaba parte de Othón P. Blanco, y era su segunda ciudad (localidad) más grande, después de Chetumal.
El nombre muy probablemente deriva de las lenguas mayas: bʼak halal, que significa «rodeado de juncos», nombre de la localidad atestiguado a la llegada de los españoles en el siglo XVI.
Bacalar es también el nombre de la laguna, la laguna de Bacalar en el lado este de la localidad.
Bacalar fue una ciudad de la civilización maya en la época precolombina. Fue la primera ciudad de la región que los conquistadores españoles lograron tomar y retener en 1543. En 1545 Gaspar Pacheco estableció aquí la ciudad española con el nombre de Salamanca de Bacalar con la ayuda de Juan de la Cámara. La región de la mitad sur de lo que hoy es Quintana Roo fue gobernada desde Bacalar, respondiendo ante el Capitán General de Yucatán en Mérida.
Después de que la ciudad fue saqueada por piratas en el siglo XVII, en 1729 se terminó de construir la Fortaleza de San Felipe Bacalar, que aún se puede visitar.
En 1848 Bacalar tenía una población de unos 5.000 habitantes. En 1848 durante la Guerra de Castas de Yucatán los rebeldes mayas Chan Santa Cruz conquistaron el pueblo. No fue retomado por los mexicanos hasta 1902.
Bacalar fue nombrado «Pueblo Mágico» en 2006.