# Communes du canton de Soleure

Cet article présente une liste des communes du canton de Soleure.

## Liste

En 2024, le canton de Soleure compte 106 communes, réparties sur 10 districts, qui ne sont plus utilisés depuis 2005 qu'à des fin statistiques.
Les communes et leurs districts :
| Nom | N° OFS | District | Population (décembre 2022) | Superficie (km$^2$) | Densité (hab./km$^2$) |
| Aedermannsdorf | 2421 | Thal | +000578, | +0012,88 | 45 |
| Aeschi | 2511 | Wasseramt | +001 306, | +0005,44 | 240 |
| Balm bei Günsberg | 2541 | Lebern | +000215, | +0005,48 | 39 |
| Balsthal | 2422 | Thal | +006 375, | +0015,71 | 406 |
| Bärschwil | 2611 | Thierstein | +000786, | +0011,22 | 70 |
| Bättwil | 2471 | Dorneck | +001 169, | +0001,67 | 700 |
| Beinwil | 2612 | Thierstein | +000268, | +0022,66 | 12 |
| Bellach | 2542 | Lebern | +005 399, | +0005,27 | 1024 |
| Bettlach | 2543 | Lebern | +004 943, | +0012,21 | 405 |
| Biberist | 2513 | Wasseramt | +009 188, | +0012,3 | 747 |
| Biezwil | 2445 | Bucheggberg | +000356, | +0004,18 | 85 |
| Bolken | 2514 | Wasseramt | +000581, | +0002,12 | 274 |
| Boningen | 2571 | Olten | +000805, | +0002,78 | 290 |
| Breitenbach | 2613 | Thierstein | +004 153, | +0006,8 | 611 |
| Buchegg | 2465 | Bucheggberg | +002 550, | +0022,64 | 113 |
| Büren | 2472 | Dorneck | +001 066, | +0006,23 | 171 |
| Büsserach | 2614 | Thierstein | +002 361, | +0007,55 | 313 |
| Däniken | 2572 | Olten | +002 946, | +0005,41 | 545 |
| Deitingen | 2516 | Wasseramt | +002 323, | +0007,64 | 304 |
| Derendingen | 2517 | Wasseramt | +006 799, | +0005,62 | 1210 |
| Dornach | 2473 | Dorneck | +006 795, | +0005,77 | 1178 |
| Drei Höfe | 2535 | Wasseramt | +000730, | +0004,56 | 160 |
| Dulliken | 2573 | Olten | +005 224, | +0006,06 | 862 |
| Egerkingen | 2401 | Gäu | +004 211, | +0006,94 | 607 |
| Eppenberg-Wöschnau | 2574 | Olten | +000325, | +0001,81 | 180 |
| Erlinsbach | 2503 | Gösgen | +003 634, | +0008,87 | 410 |
| Erschwil | 2615 | Thierstein | +000943, | +0007,43 | 127 |
| Etziken | 2518 | Wasseramt | +001 055, | +0003,38 | 312 |
| Fehren | 2616 | Thierstein | +000602, | +0001,48 | 407 |
| Feldbrunnen-Sankt Niklaus | 2544 | Lebern | +001 027, | +0002,5 | 411 |
| Flumenthal | 2545 | Lebern | +001 026, | +0003,11 | 330 |
| Fulenbach | 2575 | Olten | +001 798, | +0004,52 | 398 |
| Gempen | 2474 | Dorneck | +000923, | +0006, | 154 |
| Gerlafingen | 2519 | Wasseramt | +005 696, | +0001,85 | 3079 |
| Granges | 2546 | Lebern | +017 939, | +0026,01 | 690 |
| Gretzenbach | 2576 | Olten | +002 759, | +0005,8 | 476 |
| Grindel | 2617 | Thierstein | +000503, | +0003,06 | 164 |
| Günsberg | 2547 | Lebern | +001 191, | +0005,25 | 227 |
| Gunzgen | 2578 | Olten | +001 714, | +0003,94 | 435 |
| Hägendorf | 2579 | Olten | +005 249, | +0013,94 | 377 |
| Halten | 2520 | Wasseramt | +000851, | +0001,83 | 465 |
| Härkingen | 2402 | Gäu | +001 752, | +0005,5 | 319 |
| Hauenstein-Ifenthal | 2491 | Gösgen | +000313, | +0005,35 | 59 |
| Herbetswil | 2424 | Thal | +000587, | +0016,31 | 36 |
| Himmelried | 2618 | Thierstein | +000956, | +0006, | 159 |
| Hochwald | 2475 | Dorneck | +001 273, | +0008,32 | 153 |
| Hofstetten-Flüh | 2476 | Dorneck | +003 353, | +0007,52 | 446 |
| Holderbank | 2425 | Thal | +000732, | +0007,76 | 94 |
| Horriwil | 2523 | Wasseramt | +000866, | +0002,63 | 329 |
| Hubersdorf | 2548 | Lebern | +000708, | +0001,36 | 521 |
| Hüniken | 2524 | Wasseramt | +000157, | +0001,01 | 155 |
| Kammersrohr | 2549 | Lebern | +0 00029, | +0000,95 | 31 |
| Kappel | 2580 | Olten | +003 428, | +0005,09 | 673 |
| Kestenholz | 2403 | Gäu | +001 873, | +0008,58 | 218 |
| Kienberg | 2492 | Gösgen | +000529, | +0008,53 | 62 |
| Kleinlützel | 2619 | Thierstein | +001 191, | +0016,29 | 73 |
| Kriegstetten | 2525 | Wasseramt | +001 373, | +0001,14 | 1204 |
| Langendorf | 2550 | Lebern | +003 844, | +0001,93 | 1992 |
| Laupersdorf | 2426 | Thal | +001 865, | +0015,51 | 120 |
| Lohn-Ammannsegg | 2526 | Wasseramt | +002 953, | +0004,45 | 664 |
| Lommiswil | 2551 | Lebern | +001 595, | +0005,78 | 276 |
| Lostorf | 2493 | Gösgen | +004 067, | +0013,26 | 307 |
| Lüsslingen-Nennigkofen | 2464 | Bucheggberg | +001 119, | +0007,81 | 143 |
| Lüterkofen-Ichertswil | 2455 | Bucheggberg | +000895, | +0004,42 | 202 |
| Luterbach | 2527 | Wasseramt | +003 604, | +0004,52 | 797 |
| Matzendorf | 2427 | Thal | +001 349, | +0011,25 | 120 |
| Meltingen | 2620 | Thierstein | +000650, | +0005,75 | 113 |
| Messen | 2457 | Bucheggberg | +001 471, | +0011,89 | 124 |
| Metzerlen-Mariastein | 2477 | Dorneck | +000946, | +0008,49 | 111 |
| Mümliswil-Ramiswil | 2428 | Thal | +002 381, | +0035,53 | 67 |
| Neuendorf | 2404 | Gäu | +002 372, | +0007,16 | 331 |
| Niederbuchsiten | 2405 | Gäu | +001 274, | +0005,48 | 232 |
| Niedergösgen | 2495 | Gösgen | +004 099, | +0004,33 | 947 |
| Nuglar-Sankt Pantaleon | 2478 | Dorneck | +001 542, | +0006,34 | 243 |
| Nunningen | 2621 | Thierstein | +001 969, | +0010,34 | 190 |
| Oberbuchsiten | 2406 | Gäu | +002 345, | +0009,4 | 249 |
| Oberdorf | 2553 | Lebern | +001 844, | +0011,95 | 154 |
| Obergerlafingen | 2528 | Wasseramt | +001 246, | +0001,52 | 820 |
| Obergösgen | 2497 | Gösgen | +002 436, | +0003,64 | 669 |
| Oekingen | 2529 | Wasseramt | +000890, | +0002,4 | 371 |
| Oensingen | 2407 | Gäu | +006 607, | +0012,07 | 547 |
| Olten | 2581 | Olten | +018 339, | +0011,49 | 1596 |
| Recherswil | 2530 | Wasseramt | +002 146, | +0003,37 | 637 |
| Rickenbach | 2582 | Olten | +001 135, | +0002,76 | 411 |
| Riedholz | 2554 | Lebern | +002 288, | +0007,17 | 319 |
| Rodersdorf | 2479 | Dorneck | +001 382, | +0005,34 | 259 |
| Rüttenen | 2555 | Lebern | +001 506, | +0008,77 | 172 |
| Schnottwil | 2461 | Bucheggberg | +001 131, | +0007,18 | 158 |
| Schönenwerd | 2583 | Olten | +005 100, | +0003,73 | 1367 |
| Seewen | 2480 | Dorneck | +001 065, | +0016,3 | 65 |
| Selzach | 2556 | Lebern | +003 625, | +0019,48 | 186 |
| Soleure | 2601 | Soleure | +016 633, | +0006,28 | 2649 |
| Starrkirch-Wil | 2584 | Olten | +001 871, | +0001,84 | 1017 |
| Stüsslingen | 2499 | Gösgen | +001 263, | +0008,39 | 151 |
| Subingen | 2532 | Wasseramt | +003 211, | +0006,25 | 514 |
| Trimbach | 2500 | Gösgen | +006 644, | +0007,62 | 872 |
| Unterramsern | 2463 | Bucheggberg | +000222, | +0001,56 | 142 |
| Walterswil | 2585 | Olten | +000764, | +0004,48 | 171 |
| Wangen bei Olten | 2586 | Olten | +005 452, | +0006,96 | 783 |
| Welschenrohr-Gänsbrunnen | 2430 | Thal | +001 162, | +0024,46 | 48 |
| Winznau | 2501 | Gösgen | +002 017, | +0003,94 | 512 |
| Wisen | 2502 | Gösgen | +000437, | +0004,78 | 91 |
| Witterswil | 2481 | Dorneck | +001 446, | +0002,67 | 542 |
| Wolfwil | 2408 | Gäu | +002 385, | +0006,88 | 347 |
| Zuchwil | 2534 | Wasseramt | +009 331, | +0004,63 | 2015 |
| Zullwil | 2622 | Thierstein | +000660, | +0003,64 | 181 |
| Total | Total | Total | +282 408, | +0790,49 | 357 |
Le canton de Soleure possède deux fragments séparés par le canton de Bâle-Campagne, à la frontière avec la France. Le premier est composé des communes de Bättwil, Hofstetten-Flüh, Metzerlen-Mariastein, Rodersdorf et Witterswil ; le deuxième de la seule commune de Kleinlützel. Par ailleurs, l'ancienne commune de Steinhof est enclavée dans le canton de Berne.

## Fusions de communes

Le tableau ci-dessous dresse la liste des fusions de communes ayant été opérées dans le canton de Soleure.
| Entrée en vigueur (date) | Anciennes communes | Nouvelle commune |
| 2006 | Niedererlinsbach + Obererlinsbach | Erlinsbach |
| 2010 | Balm bei Messen + Brunnenthal + Messen + Oberramsern | Messen |
| 2011 | Niederwil + Riedholz | Riedholz |
| 2012 | Aeschi + Steinhof | Aeschi |
| 2013 | Lüsslingen + Nennigkofen | Lüsslingen-Nennigkofen |
| 2013 | Heinrichswil-Winistorf + Hersiwil | Drei Höfe |
| 2014 | Aetigkofen + Aetingen + Bibern + Brügglen + Gossliwil + Hessigkofen + Küttigkofen + Kyburg-Buchegg + Mühledorf + Tscheppach | Buchegg |
| 1er janvier 2021 | Gänsbrunnen + Welschenrohr | Welschenrohr-Gänsbrunnen |
| 1er janvier 2021 | Rohr + Stüsslingen | Stüsslingen |
| 1er janvier 2024 | Buchegg + Lüterswil-Gächliwil | Buchegg |