L’existence de Bulle est attestée dès le IXe siècle. La ville est alors le siège de l’église principale d’une vaste région. Située au croisement de plusieurs vallées et voies de communication, elle accueille un marché hebdomadaire dès le XIIe siècle. L’origine du nom Bulle n’est pas connue. Les anciens noms de la cité sont Butulum (IXe siècle), Bollo (1200), Bullo (vers 1225) et en allemand, Boll.
Au Moyen Âge, Bulle appartient à l’évêque de Lausanne qui fait construire le château et les remparts. Suite à l’occupation du Pays de Vaud par Berne (1536), les Bullois deviennent sujets de Fribourg. Le taureau sur les armoiries de Bulle est une « armoirie parlante » issue du rapprochement entre le terme patois bolè (jeune taureau) et le nom de la cité.
La ville est, dès le XVIIe siècle, une étape importante pour l’exportation des fromages de Gruyère. Les meules sont rassemblées dans ses caves avant de rejoindre Vevey, Genève et les foires de Lyon.
Au XVIIIe siècle, presque tous les toits de Bulle sont couverts de bardeaux ou de tavillons (tuiles de bois). Ceux-ci contribuent gravement à l’extension de l’incendie qui détruit en grande partie la ville le 2 avril 1805. La reconstruction dure un demi-siècle.
Chef-lieu du district de la Gruyère depuis 1848, Bulle est reliée au réseau ferroviaire national en 1868. En 2012, le RER (réseau express régional) place la ville à une heure de Lausanne et de Berne. L’ouverture de l’autoroute A12 (1981) contribue à renforcer l’attractivité de la cité : elle compte 1000 habitants en 1722, 4000 en 1912 et près de 20’000 en 2013, après la fusion avec La Tour-de-Trême (2006).