# List of Belgian railway services

This is an index of all passenger rail services operated in Belgium.
Passenger rail services in Belgium are operated by NMBS/SNCB.
The Belgian rail network is organised into three main domestic passenger train categories on the main lines, these are:
* Intercity (IC) trains–An express, limited-stop service, often calling only at major railway stations; in some cases it has stops at all stations along part of the route.
* Local (L) trains (Lokale treinen / trains Locaux)–A local service calling at all stations along the route.
* Regional (S) trains–A suburban service calling at all stations along the route.
To cater for the large number of commuter workers, especially into Brussels, complementary peak-hours trains run on mornings and late afternoons of working days, they are classified as P trains.
The Brussels S Train service was added in December 2015 and took over a good deal of the L trains. S Trains, and were later also introduced around other key cities like Antwerp, Liège, Gent.
International (high speed) services operate to countries such as the Netherlands, France, Germany, Luxembourg, Austria and UK. These are operated by Eurostar, NS International, Deutsche Bahn, ÖBB Nightjet and SNCF, Arriva and European Sleeper
Below the train services are arranged by type, and for each type ordered by number. All services are correct to May 2020.

## Services

International :
| Route | Type | Stops | Frequency | Notes |
| Brussels–London | Eurostar | Brussels-South–Lille Europe–Calais–Ashford–Ebbsfleet–London St Pancras | 9x per day | |
| Amsterdam–Paris | Eurostar | Amsterdam–Schiphol–Rotterdam–Antwerpen-Centraal–Brussels-South–Paris Nord | 12x per day | |
| Essen–Paris | Eurostar | Essen–Duisburg–Düsseldorf Airport–Düsseldorf–Cologne–Aachen–Liège-Guillemins–Brussels-South–Paris Nord | 5x per day | |
| Amsterdam–Bourg-Saint-Maurice | Eurostar | Amsterdam–Schiphol–Rotterdam–Antwerpen-Centraal–Brussels-South–Chambéry-Challes-les-Eaux–Albertville–Moûtiers-Salins-Brides-les-Bains–Aime-La Plagne–Landry–Bourg-Saint-Maurice | 1x per week in winter | |
| Amsterdam–Marseille | Eurostar | Amsterdam–Schiphol–Rotterdam–Antwerpen-Centraal–Brussels-South–Valence TGV–Avignon TGV–Aix-en-Provence TGV–Marseille | 1x per week in summer | |
| Brussels–Frankfurt | IC E | Brussels-South–Brussels-North–Liège-Guillemins–Aachen–Cologne–Frankfurt Flughafen Fernbahnhof–Frankfurt (Main) | 6x per day | |
| Brussels–Marseille | TGV | Brussels-South–Lille Europe–Aéroport Charles de Gaulle 2 TGV–Marne-la-Vallée–Chessy–Lyon-Part-Dieu–Avignon TGV–Aix-en-Provence TGV–Marseille | 2x per day | |
| Brussels–Montpellier | TGV | Brussels-South–Lille Europe–Aéroport Charles de Gaulle 2 TGV–Marne-la-Vallée–Chessy–Lyon-Part-Dieu–Valence TGV–Nîmes–Montpellier | | |
| Brussels–Lyon | TGV | Brussels-South–Lille Europe–Aéroport Charles de Gaulle 2 TGV–Marne-la-Vallée–Chessy–Lyon-Perrache | | |
| Brussels–Rennes | TGV | Brussels-South–Lille Europe–TGV Haute-Picardie–Aéroport Charles de Gaulle 2 TGV–Marne-la-Vallée–Chessy–Massy TGV–Le Mans–Rennes | | |
| Brussels–Nantes | TGV | Brussels-South–Lille Europe–TGV Haute-Picardie–Aéroport Charles de Gaulle 2 TGV–Marne-la-Vallée–Chessy–Massy TGV–Le Mans–Angers–Nantes | | |
| Brussels–Strasbourg | TGV | Brussels-South–Lille Europe–Aéroport Charles de Gaulle 2 TGV–Champagne-Ardenne TGV–Lorraine TGV–Strasbourg | 2x per day | Replacement of EC Iris and Vauban |
| Brussels-Berlin | European Sleeper | Brussels-South–Antwerpen-Centraal–Roosendaal–Rotterdam Centraal–Den Haag HS–Schiphol Airport–Amsterdam Centraal–Amersfoort Centraal–Deventer–Bad Bentheim–Berlin Hbf–Berlin Ostbhf | 3x per week | Night train service |
| Brussels–Vienna | ÖBB Nightjet | Brussels-South–Brussels-North–Liège-Guillemins–Aachen–Cologne–Bonn-Beuel–Koblenz–Mainz–Frankfurt Flughafen Fernbahnhof–Frankfurt (Main) Süd–Nuremberg–Regensburg–Passau–Wels–Linz–Amstetten NÖ–St. Pölten–Wien Meidling–Vienna | 3x per week | Night train service |
| Antwerp–Lille (IC 04) | Intercity | Antwerpen-Centraal–Antwerpen-Berchem–Sint-Niklaas–Lokeren –Gent-Dampoort–Gent-Sint-Pieters–Waregem–Kortrijk–Mouscron–Tourcoing–Roubaix–Lille Flandres | 1x per hour | Trains split/join at Kortrijk |
| Brussels–Luxembourg (IC 16) | Intercity | Brussels-South–Brussels-Central–Brussels-North–Brussels-Schuman–Brussels-Luxembourg–Ottignies–Gembloux–Namur–Ciney–Marloie–Jemelle–Libramont–Marbehan–Arlon–Luxembourg | 1x per hour | |
| Lille–Namur (IC 19) | Intercity | Lille Flandres–Lezennes–Hellemmes–Ascq–Baisieux–Froyennes–Tournai–Saint-Ghislain–Mons–La Louvière-Sud–Charleroi-Sud–Tamines–Namur | 1x per hour | |
| Liège–Luxembourg (IC 33) | Intercity | Liers–Milmort–Herstal–Liège-Saint-Lambert–Liège-Carré–Liège-Guillemins–Angleur–Poulseur–Rivage–Aywaille–Coo–Trois-Ponts–Vielsalm–Gouvy–Troisvierges–Clervaux–Drauffelt–Wilwerwiltz–Kautenbach–Ettelbruck–Mersch–Luxembourg | 1x per hour week, 1tp2h weekends | |
| Amsterdam–Brussels (IC 35) | Intercity | Amsterdam Centraal–Schiphol–Den Haag Hollands Spoor–Rotterdam Centraal–Noorderkempen–Antwerpen-Centraal–Antwerpen-Berchem–Mechelen–Brussels Airport-Zaventem–Brussels-North–BrusseL Centraal–Brussels-South | 1x per hour | |
| Spa–Aachen (L 09) | Local train | Spa-Géronstère–Spa–Franchimont–Theux–Juslenville–Pepinster-Cité–Pepinster–Verviers-Central–Verviers-Palais–Dolhain-Gileppe–Welkenraedt–Hergenrath–Aachen Hbf | | |
| Arlon -Luxemburg | Local train | Arlon–Kleinbettingen–Luxembourg | 2x per hour | |
| Athus–Luxemburg | Local train | Athus–Rodange–Lamadelaine–Pétange–Bascharage-Sanem–Schouweiler–Dippach-Reckange–Leudelange–Hollerich–Luxembourg | 2x per hour | |
| Roosendaal–Puurs (S32) | S-train | Roosendaal–Essen–Wildert–Kalmthout–Kijkuit–Heide–Kapellen–Sint-Mariaburg–Ekeren–Antwerpen-Noorderdokken–Antwerpen-Luchtbal–Antwerpen-Centraal–Antwerpen-Berchem–Antwerpen-Zuid–Hoboken-Polder–Hemiksem–Schelle–Niel–Boom–Ruisbroek-Sauvegarde–Puurs | 1x per hour RoosendaaL Puurs 2x per hour Antwerp-Puurs | |
| Liège-Guillemins–Maastricht (Sneltrien RE18) | Sneltrien | Liège-Guillemins – Bressoux – Visé – Eijsden – Maastricht Randwijck – Maastricht - Meerssen - Valkenburg – Heerlen – Landgraaf - Herzogenrath - Aachen West - Aachen Hbf | 1x per hour |
National Intercity :
| Route | Stops | Frequency | Notes |
| IC 01 | Oostende–Brugge–Gent-Sint-Pieters–Brussels-South–Brussels-Central–Brussels-North–Leuven–Liège-Guillemins–Verviers-Central–Welkenraedt–Eupen | 1x per hour | |
| IC 02 | Oostende–Brugge–Gent-Sint-Pieters–Gent-Dampoort–Lokeren–Sint-Niklaas–Beveren–Antwerpen-Zuid–Antwerpen-Berchem–Antwerpen-Centraal | 1x per hour | |
| IC 03 | Blankenberge–Brugge–Aalter–Gent-Sint-Pieters–Brussels-South–Brussels-Central–Brussels-North–Leuven–Tienen–Landen–Sint-Truiden–Alken–Hasselt–Kiewit–Bokrijk–Genk | 1x per hour | |
| IC 04 | Antwerpen-Centraal–Antwerpen-Berchem–Sint-Niklaas–Lokeren (- Beervelde)–Gent-Dampoort–Gent-Sint-Pieters–Waregem–Kortrijk–Mouscron–Tourcoing–Roubaix–Lille Flandres | 1x per hour | Trains split/join at Kortrijk |
| IC 04 | Antwerpen-Centraal–Antwerpen-Berchem–Sint-Niklaas–Lokeren (- Beervelde)–Gent-Dampoort–Gent-Sint-Pieters–Waregem–Kortrijk–Bissegem–Wevelgem–Menen–Wervik–Komen–Ieper–Poperinge | 1x per hour | Trains split/join at Kortrijk |
| IC 05 | Antwerpen-Centraal–Antwerpen-Berchem–Mechelen–Brussels-North–Brussels-Central–Brussels-South–Braine-l'Alleud–Nivelles–Luttre–Marchienne-au-Pont–Charleroi-Central | 1x per hour | Does not operate at weekends |
| IC 06 | Tournai–Leuze–Ath–Silly–Enghien–Halle–Brussels-South–Brussels-Central–Brussels-North–Diegem–Zaventem–Brussels Airport-Zaventem | 1x per hour | |
| IC 06A | Mons–Jurbise–Soignies–Braine-le-Comte–Brussels-South–Brussels-Central–Brussels-North–Brussels Airport-Zaventem | 1x per hour | |
| IC 07 | Antwerpen-Centraal–Antwerpen-Berchem–Mechelen–Brussels-North–Brussels-Central–Brussels-South–Braine-l'Alleud–Nivelles–Luttre–Marchienne-au-Pont–Charleroi-Central | 1x per hour | Does not operate at weekends |
| IC 08 | Antwerpen-Centraal–Antwerpen-Berchem–Mechelen–Brussels Airport-Zaventem–Leuven–Aarschot–Langdorp–Testelt–Zichem–Diest–Schulen–Hasselt | 1x per hour | |
| IC 09 | Antwerpen-Centraal–Antwerpen-Berchem–Lier–Heist-op-den-Berg–Aarschot–Leuven | 1x per hour | Weekdays |
| IC 09 | Antwerpen-Centraal–Antwerpen-Berchem–Lier–Heist-op-den-Berg–Aarschot–Diest–Hasselt–Diepenbeek–Bilzen–Tongeren–Glons–Liers–Milmort–Herstal–Liège-Saint-Lambert–Liège-Carré–Liège-Guillemins | 1x per hour | Weekends |
| IC 10 | Antwerpen-Centraal–Antwerpen-Berchem–Lier–Herentals–Olen–Geel–Mol–Lommel–Overpelt–Neerpelt–Hamont | 1x per hour | Trains join/split at Mol |
| IC 10 | Antwerpen-Centraal–Antwerpen-Berchem–Lier–Herentals–Olen–Geel–Mol–Balen–Leopoldsburg–Beverlo–Beringen–Heusden–Zolder–Zonhoven–Hasselt | 1x per hour | Trains join/split at Mol |
| IC 11 | Binche–Leval–La Louvière-Sud–La Louvière-Centre–Ecaussinnes–Braine-le-Comte–Tubize–Halle–Brussels-South–Brussels-Central–Brussels-North–Vilvoorde–Mechelen–Lier–Herentals–Tielen–Turnhout | 1x per hour | Does not operate at weekends |
| IC 12 | Kortrijk–Harelbeke–Waregem–Deinze–De Pinte–Gent-Sint-Pieters–Brussels-South–Brussels-Central–Brussels-North–Leuven–Liège-Guillemins–Angleur–Pepinster–Verviers-Central–Welkenraedt | 1x per hour | Does not operate between Gent and Welkenraedt at weekends |
| IC 13 | Hasselt–Diepenbeek–Bilzen–Tongeren–Glons–Liers–Milmort–Herstal–Liège-Saint-Lambert–Liège-Carré–Liège-Guillemins–Bressoux–Visé–Eijsden–Maastricht Randwijck–Maastricht | 1x per hour | Weekdays |
| IC 13 | Liège-Guillemins–Bressoux–Visé–Eijsden–Maastricht Randwijck–Maastricht | 1x per hour | Weekends |
| IC 14 | Quiévrain–Thulin–Hainin–Boussu–Saint-Ghislain–Quaregnon–Jemappes–Mons–Jurbise–Soignies–Braine-le-Comte–Halle–Brussels-South–Brussels-Central–Brussels-North–Leuven–Tienen–Landen–Waremme–Ans–Liège-Guillemins | 1x per hour | Does not operate at weekends |
| IC 15 | Noorderkempen–Antwerpen-Luchtbal–Antwerpen-Centraal | 1x per hour | |
| IC 16 | Brussels-South–Brussels-Central–Brussels-North–Brussels-Schuman–Brussels-Luxembourg–Ottignies–Gembloux–Namur–Ciney–Marloie–Jemelle–Libramont–Marbehan–Arlon–Luxembourg | 1x per hour | |
| IC 17 | Brussels Airport-Zaventem–Bordet–Brussels-Schuman–Brussels-Luxembourg–Etterbeek–Ottignies–Gembloux–Namur–Jambes–Lustin–Godinne–Yvoir–Dinant | 1x per hour | Weekdays |
| IC 17 | Brussels-South–Brussels-Central–Brussels-North–Brussels-Schuman–Brussels-Luxembourg–Etterbeek–Ottignies–Gembloux–Namur–Jambes–Lustin–Godinne–Yvoir–Dinant | 1x per hour | Weekends |
| IC 18 | Brussels-South–Brussels-Central–Brussels-North–Brussels-Schuman–Brussels-Luxembourg–Etterbeek–Ottignies–Gembloux–Namur–Andenne–Statte–Huy–Flémalle-Haute–Liège-Guillemins–Liège-Carré–Liège-Saint-Lambert | 1x per hour | Does not operate at weekends |
| IC 19 | Lille Flandres–Lezennes–Hellemmes–Ascq–Baisieux–Froyennes–Tournai–Saint-Ghislain–Mons–La Louvière-Sud–Charleroi-Sud–Tamines–Namur | 1x per hour | |
| IC 20 | Gent-Sint-Pieters–Merelbeke–Melle–Wetteren–Lede–Aalst–Denderleeuw–Liedekerke–Brussels-South–Brussels-Central–Brussels-North–Aarschot–Diest–Hasselt–Diepenbeek–Bilzen–Tongeren | 1x per hour | Weekdays |
| IC 20 | Gent-Sint-Pieters–Merelbeke–Melle–Wetteren–Lede–Aalst–Denderleeuw–Liedekerke–Brussels-South–Brussels-Central–Brussels-North–Jette–Dendermonde–Zele–Lokeren | 1x per hour | Weekends |
| IC 21 | Gent-Sint-Pieters–Wetteren–Dendermonde–Londerzeel–Mechelen–Muizen–Hever–Boortmeerbeek–Haacht–Wespelaar-Tildonk–Hambos–Wijgmaal–Leuven | 1x per hour | Does not operate at weekends |
| IC 22 | Essen–Kalmthout–Heide–Kapellen–Ekeren–Antwerpen-Centraal–Antwerpen-Berchem–MortseL Oude-God–Mechelen-Nekkerspoel–Mechelen–Vilvoorde–Brussels-North–Brussels-Central–Brussels-South | 1x per hour | Weekdays |
| IC 22 | Antwerpen-Centraal–Antwerpen-Berchem–MortseL Oude-God–Mechelen-Nekkerspoel–Mechelen–Vilvoorde–Brussels-North–Brussels-Central–Brussels-South–Halle–Tubize–Braine-le-Comte–Ecaussinnes–La Louvière-Centre–La Louvière-Sud–Leval–Binche | 1x per hour | Weekends |
| IC 23 | Oostende–Brugge–Zedelgem–Torhout–Lichtervelde–Roeselaere–Izegem–Ingelmunster–Kortrijk–Oudenaarde–Munkzwalm–Zottegem–Herzele–Burst–Haaltert–Denderleeuw–Brussels-South–Brussels-Central–Brussels-North–Brussels Airport-Zaventem | 1x per hour | |
| IC 23A | Brugge–Aalter–Gent-Sint-Pieters–Brussels-South–Brussels-Central–Brussels-North–Brussels Airport-Zaventem | 1x per hour | Weekdays |
| IC 23A | Gent-Sint-Pieters–Brussels-South–Brussels-Central–Brussels-North–Brussels Airport-Zaventem | 1x per hour | Weekends |
| IC 24 | Charleroi-Sud–Jamioulx–Ham-sur-Heure–Cour-sur-Heure–Berzée–Walcourt–Yves-Gomezée–Philippeville–Mariembourg–Couvin | 1x per hour | |
| IC 25 | Mons–La Louvière-Sud–Marchienne-au-Pont–Charleroi Sud–Châtelet–Tamines–Auvelais–Jemeppe-sur-Sambre–Namur–Andenne–Statte–Huy–Flémalle-Haute–Liège-Guillemins–Liège-Carré–Liège-Saint-Lambert–Herstal | 1x per hour | Weekdays |
| IC 25 | Mouscron–Hersaux–Tournai–Antoing–Péruwelz–Blaton–Saint-Ghislain–Quaregnon–Jemappes–Mons–La Louvière-Sud–Marchienne-au-Pont–Charleroi Sud–Châtelet–Tamines–Auvelais–Jemeppe-sur-Sambre–Namur–Andenne–Statte–Huy–Flémalle-Haute–Liège-Guillemins–Liège-Carré–Liège-Saint-Lambert–Herstal–Milmort–Liers | 1x per hour | Weekends |
| IC 26 | Kortrijk–Mouscron–Hersaux–Froyennes–Tournai–Leuze–Ath–Silly–Enghien–Halle–Brussels-South–Brussels-Central–Brussels-North–Jette–Dendermonde–Zele–Lokeren–Sinaai–Belsele–Sint-Niklaas | 1x per hour | Does not operate at weekends |
| IC 27 | Brussels Airport-Zaventem–Bordet–Brussels-Schuman–Brussels-Luxembourg–Etterbeek–Boondael–Vivier d'Oie–Saint-Job–Linkebeek–Sint-Genesius-Rode–Waterloo–Braine-l'Alleud–Lillois–Nivelles–Obaix-Buzet–Luttre–Courcelles-Motte–Roux–Marchienne-au-Pont–Charleroi-Sud | 1x per hour | Does not operate at weekends |
| IC 28 | Gent-Sint-Pieters–Gent-Dampoort–Beervelde–Lokeren–Sint-Niklaas–Antwerpen-Zuid–Antwerpen-Berchem–Antwerpen-Centraal | 1x per hour | Does not operate at weekends |
| IC 29 | De Panne–Koksijde–Veurne–Diksmuide–Kortemark–Lichtervelde–Tielt–Deinze–De Pinte–Gent-Sint-Pieters–Wetteren–Schellebelle–Serskamp–Lede–Aalst–Erembodegem–Denderleeuw–Liedekerke–Brussels-South–Brussels-Central–Brussels-North–Brussels Airport-Zaventem–Leuven–Vertrijk–Tienen–Ezemaal–Neerwinden–Landen | 1x per hour | Leuven–Landen only every 2 hours on weekends |
| IC 30 | Antwerpen-Centraal–Antwerpen-Berchem–Lier–Kessel–Nijlen–Bouwel–Herentals–Tielen–Turnhout | 1x per hour | |
| IC 31 | Antwerpen-Centraal–Antwerpen-Berchem–MortseL Oude-God–Mechelen-Nekkerspoel–Mechelen–Vilvoorde–Brussels-North–Brussels-Central–Brussels-South | 1x per hour | Weekdays |
| IC 31 | Antwerpen-Centraal–Antwerpen-Berchem–MortseL Oude-God–Mechelen-Nekkerspoel–Mechelen–Vilvoorde–Brussels-North–Brussels-Central–Brussels-South–Braine-l'Alleud–Nivelles–Luttre–Marchienne-au-Pont–Charleroi-Sud | 1x per hour | Weekends |
| IC 32 | Brugge–Zedelgem–Torhout–Lichtervelde–Roeselaere–Izegem–Ingelmunster–Kortrijk | 1x per hour; 2x per hour on weekends | |
| IC 33 | Liers–Milmort–Herstal–Liège-Saint-Lambert–Liège-Carré–Liège-Guillemins–Angleur–Poulseur–Rivage–Aywaille–Coo–Trois-Ponts–Vielsalm–Gouvy–Troisvierges–Clervaux–Drauffelt–Wilwerwiltz–Kautenbach–Ettelbruck–Mersch–Luxembourg | Every 2 hours | |
| IC 35 | Amsterdam Centraal–Schiphol–Den Haag Hollands Spoor–Rotterdam Centraal–Dordrecht–Roosendaal–Antwerpen-Centraal–Antwerpen-Berchem–Mechelen–Brussels Airport-Zaventem–Brussels-North–BrusseL Centraal–Brussels-South | 1x per hour | |
National local services :
| Route | Stops | Frequency | Notes |
| L 01 | Namur–Marche-les-Dames–Namêche–Sclaigneaux–Château de Seilles–Andenne–Bas-Oha–Statte–Huy–Ampsin–Amay–Haute-Flône–Engis–Flémalle-Haute–Leman–Flémalle-Grande–Jemeppe-sur-Meuse–Pont-de-Seraing–Sclessin–Liège-Guillemins | 1x per hour; every 2 hours at weekends | |
| L 02 | Zeebrugge-Strand / Zeebrugge-Dorp–Lissewege–Brugge-Sint-Pieters–Brugge–Oostkamp–Beernem–Maria-Aalter–Aalter–Bellem–Hansbeke–Landegem–Drongen–Gent-Sint-Pieters–Merelbeke–Melle–Kwatrecht–Wetteren–Schellebelle–Wichelen–Schoonaarde–Oudegem–Dendermonde–Baasrode-Zuid–Buggenhout–Malderen–Londerzeel–Kapelle-op-den-Bos–Mechelen | 1x per hour | Weekdays |
| L 02 | Zeebrugge-Strand / Zeebrugge-Dorp–Lissewege–Brugge-Sint-Pieters–Brugge–Oostkamp–Beernem–Maria-Aalter–Aalter–Bellem–Hansbeke–Landegem–Drongen–Gent-Sint-Pieters | Every 2 hours | Weekends |
| L 03 | Leuven–Wezemaal–Aarschot–Langdorp–Testelt–Zichem–Diest–Schulen–Hasselt | 1x per hour | Not weekends |
| L 04 | Braine-le-Comte–Soignies–Neufvilles–Masnuy-Saint-Pierre–Jurbise | 1x per hour | Does not operate at weekends |
| L 05 | Eeklo–Waarschoot–Sleidinge–Evergem–Wondelgem–Gent-Dampoort–Gentbrugge–Gent-Sint-Pieters- De Pinte–Eke-Nazareth–Gavere-Asper–Zingem–Eine–Oudenaarde–Ronse | 1x per hour | Trains split/join at Oudenaarde |
| L 05 | Eeklo–Waarschot–Sleidinge–Evergem–Wondelgem–Gent-Dampoort–Gentbrugge–Gent-Sint-Pieters- De Pinte–Eke-Nazareth–Gavere-Asper–Zingem–Eine–Oudenaarde–Anzegem–Vichte–Kortrijk | 1x per hour | Trains split/join at Oudenaarde; does not operate at weekends |
| L 06 | Luttre–Pont-à-Celles–Gouy-lez-Piéton–Godarville–Manage–La Louvière-Centre–La Louvière-Sud–Morlanwelz–Carnières–Piéton–Forchies–Marchienne-au-Pont–Charleroi-Sud | 1x per hour | Weekdays |
| L 06 | Manage–La Louvière-Centre–La Louvière-Sud–Morlanwelz–Carnières–Piéton–Forchies–Marchienne-au-Pont–Charleroi-Sud | Every 2 hours | Weekends |
| L 06A | Manage–Godarville–Gouy-lez-Piéton–Pont-à-Celles–Luttre–Courcelles-Motte–Roux–Marchienne-au-Pont–Charleroi-Sud | Every 2 hours | Weekends |
| L 07 | Erquelinnes–Erquelinnes-Village–Solre-sur-Sambre–Labuissière–Fontaine-Valmont–Lobbes–Thuin–Hourpes–Landelies–Marchienne-Zone–Charleroi-Sud | 1x per hour; every 2 hours at weekends | Stations in italics are not served at weekends |
| L 08 | Ottignies–Mont-Saint-Guibert–Blanmont–Chastre–Ernage–Gembloux–Lonzée–Beuzet–Saint-Denis-Bovesse–Rhisnes–Namur | 1x per hour; every 2 hours at weekends | |
| L 09 | Spa-Géronstère–Spa–Franchimont–Theux–Juslenville–Pepinster-Cité–Pepinster–Verviers-Central–Verviers-Palais–Dolhain-Gileppe–Welkenraedt–Hergenrath–Aachen Hbf | | |
| L 10 | Ciney–Leignon–Chapois–Haversin–Aye–Marloie–Jemelle–Forrières–Grupont–Poix-Saint-Hubert–Libramont | Every 2 hours | |
| L 11 | Namur–Jambes–Lustin–Godinne–Yvoir–Dinant–Anseremme–Gendron-Celles–Houyet–Beauraing–Gedinne–Graide–Carlsbourg–Paliseul–Bertrix–Libramont | Every 2 hours | |
| L 12 | Libramont–Neufchâteau–Marbehan–Habay–Stockem–Viville–Arlon–Kleinbettingen–Luxembourg | Every 2 hours | |
| L 13 | Libramont–Bertrix–Florenville–Virton–Halanzy–Aubange–Athus–Messancy–Arlon | Every 2 hours | Does not operate between Virton and Arlon at weekends |
| L 14 | Ottignies–Céroux Mousty–Court Saint Etienne–Faux–La Roche–Villers la Ville–Tilly–Ligny–Fleurus–Lodelinsart–Charleroi-West–Charleroi-Sud–Couillet–Châtelet–Le Campinaire–Farciennes–Aiseau–Tamines–Auvelais–Jemeppe-sur-Sambre–Moustier–Franière–Floreffe–Flawinne–Ronet–Namur–Jambes | 1x per hour; every 2 hours at weekends | Does not operate between Namur and Jambes at weekends |
| L 15 | Liers–Milmort–Herstal–Liège-Saint-Lambert–Liège-Carré–Liège-Guillemins–Angleur–Tilff–Méry–Hony–Esneux–Poulseur–Rivage–Comblain-la-Tour–Hamoir–Sy–Bomal–Barvaux–Melreux-Hotton–Marche-en-Famenne–Marloie | 1x per hour | |
| L 16 | Namur–Jambes-Est–Dave-Saint-Martin–Naninne–Sart-Bernard–Courrière–Assesse–Natoye–Ciney | 1x per hour; every 2 hours at weekends | Stations in italics are served at weekends |
| L 17 | Herstal–Liège-Saint-Lambert–Liège-Carré–Liège-Guillemins–Angleur–Chênée–Trooz–Fraipont–Nessonvaux–Pepinster–Verviers-Central | 1x per hour | |
| L 18 | Mons–Saint-Ghislain–Boussu–Hainin–Thulin–Quiévrain | 1x per hour | Weekends |
| L 19 | Braine-le-Comte–Écaussinnes–Marche-lez-Écaussinnes–Familleureux–Manage | 1x per hour | Weekdays |
| L 20 | Sint-Niklaas–Temse–Bornem–Puurs–Willebroek–Mechelen–Muizen–Hever–Boortmeerbeek–Haacht–Wespelaar-Tildonk–Wijgmaal–Leuven | 1x per hour | Weekdays |
| L 20 | Mechelen–Muizen–Boortmeerbeek–Haacht–Wespelaar-Tildonk–Wijgmaal–Leuven | 1x per hour | Weekends |
| L 21 | Waremme–Bleret–Remicourt–Momalle–Fexhe-le-Haut-Clocher–Voroux–Bierset-Awans–Ans–Liège-Guillemins | 1x per hour | Weekdays |
| L 21 | Landen–Waremme–Remicourt–Momalle–Fexhe-le-Haut-Clocher–Bierset-Awans–Ans–Liège-Guillemins | 1x per hour | Weekends |
| L 22 | Roosendaal–Essen–Wildert–Kalmthout–Kijkuit–Heide–Kapellen–Sint-Mariaburg–Ekeren–Antwerpen-Noorderdokken–Antwerpen-Luchtbal–Antwerpen-Centraal–Antwerpen-Berchem–Antwerpen-Zuid–Hoboken-Polder–Hemiksem–Schelle–Niel–Boom–Ruisbroek-Sauvegarde–Puurs | 1x per hour | Does not operate between Antwerp and Puurs at weekends |
| L 23 | Antwerpen-Centraal–Antwerpen-Berchem–Mortsel–Boechout–Lier–Berlaar–Melkouwen–Heist-op-den-Berg–Booischot–Begijnendijk–Aarschot–Wezemaal–Leuven | 1x per hour | |
| L 24 | Antwerpen-Centraal–Antwerpen-Berchem–Mortsel–Boechout–Lier–Kessel–Nijlen–Bouwel–Wolfstee–Herentals–Olen–Geel–Mol | 1x per hour | Does not operate at weekends |
| L 25 | Gent-Sint-Pieters–Merelbeke–Melle–Gontrode–Landskouter–Moortsele–Scheldewindeke–Balegem-Dorp–Balegem-Zuid–Zottegem–Lierde–Geraardsbergen | 1x per hour | Stations in italics are not served at weekends |
| L 26 | Quévy–Genly–Frameries–Mons–Nimy–Obourg–Havré–Thieu–Bracquegnies–La Louvière-Sud | 1x per hour | Weekdays |
| L 26 | Mons–Nimy–Havré–Thieu–Bracquegnies–La Louvière-Sud | Every 2 hours | Weekends |
| L 27 | Sint-Niklaas–Temse–Bornem–Puurs–Willebroek–Mechelen | 1x per hour | Weekends |
| L 28 | Gent-Sint-Pieters–Kwatrecht–Wetteren–Schoonaarde–Dendermonde–Buggenhout–Malderen–Londerzeel–Kapelle-op-den-Bos–Mechelen | 1x per hour | Weekends |
| L 29 | Geraardsbergen–Acren–Lessines–Houraing–Papignies–Rebaix–Ath–Maffle–Mévergnies-Attre–Brugelette–Cambron-Casteau–Lens–Jurbise–Erbisoeul–Ghlin–Mons–Jemappes–Quaregnon–Saint-Ghislain–Blaton–Péruwelz–Antoing–Tournai | 1x per hour; Every 2 hours at weekends | Does not operate between Mons and Tournai at weekends; stations in italics are not served at weekends |
| L 30 | (Dendermonde–Zele -) Lokeren–Sinaai–Belsele–Sint-Niklaas–Nieuwkerken-Waas–Beveren–Melsele–Zwijndrecht–Antwerpen-Zuid–Antwerpen-Berchem–Antwerpen-Centraal | 1x per hour | |
S Train network :
| Route | Stops | Frequency | Notes |
| S1 | Antwerpen-Centraal–Antwerpen-Berchem–Mortsel–MortseL Liersesteenweg–Hove–Kontich–Duffel–Sint-Katelijne-Waver–Mechelen-Nekkerspoel–Mechelen–Weerde–Eppegem–Vilvoorde–Buda–Schaarbeek–Brussels-North–Brussels-Congress–Brussels-Central–Brussels-Chapel–Brussels-South–Forest-East–Uccle-Stalle–Uccle-Calevoet–Linkebeek–Holleken–Sint-Genesius-Rode–De Hoek–Waterloo–Braine-l'Alleud–Lillois–Nivelles | 2x per hour between Antwerp, Brussels and Nivelles | Weekdays |
| S1 | Antwerpen-Centraal–Antwerpen-Berchem–MortseL Deurnesteenweg–MortseL Oude-God–Hove–Kontich–Duffel–Sint-Katelijne-Waver–Mechelen-Nekkerspoel–Mechelen–Weerde–Eppegem–Vilvoorde–Schaarbeek–Brussels-North–Brussels-Central–Brussels-South | 1x per hour | Weekends |
| S1 | Brussels-North–Brussels-Central–Brussels-South–Forest-East–Uccle-Stalle–Uccle-Calevoet–Linkebeek–Holleken–Sint-Genesius-Rode–De Hoek–Waterloo–Braine-l'Alleud–Lillois–Nivelles | 1x per hour | Weekends |
| S2 | Leuven–Herent–Veltem–Erps-Kwerps–Kortenberg–Nossegem–Zaventem–Diegem–Haren-South –Schaarbeek–Brussels-North–Brussels-Central–Brussels-South–Forest-South–Ruisbroek–Lot–Buizingen–Halle–Lembeek–Tubize–Hennuyères–Braine-le-Comte | 2x per hour | |
| S3 | Dendermonde–Sint-Gillis–Lebbeke–Heizijde–Opwijk–Merchtem–Mollem–Asse–Zellik–Jette–Bockstael–Brussels-North–Brussels-Central–Brussels-South -Denderleeuw–Welle–Haaltert–Ede–Burst–Terhagen -Herzele–Hillegem–Zottegem–Munkzwalm–Sint-Denijs-Boekel–Oudenaarde | 1x per hour | Weekdays |
| S4 | Vilvoorde–Haren–Bordet–Evere–Meiser–Merode–Delta–Etterbeek–Brussels-Luxembourg–Brussels-Schuman–Bockstael–Jette–Sint-Agatha-Berchem–Groot-Bijgaarden–Dilbeek–Sint-Martens-Bodegem–Ternat–Essene-Lombeek–Liedekerke–Denderleeuw–Erembodegem–Aalst | 1x per hour | Weekdays, stations in italics are served during peak hours |
| S5 | Mechelen–Weerde–Eppegem–Vilvoorde–Haren–Bordet–Evere–Meiser–Brussels-Schuman–Brussels-Luxembourg–Mouterij–Etterbeek–Boondael–Vivier d'Oie–Saint-Job–Moensberg–Beersel–Huizingen–Halle–Enghien–Herne–Tollembeek–Galmaarden–Viane-Moerbeke–Geraardsbergen | 2x per hour | Weekdays, stations in italics are served during peak hours |
| S6 | Aalst–Denderleeuw–Iddergem–Okegem–Ninove–Eichem–Appelterre–Zandbergen–Idegem–Schendelbeke–Geraardsbergen–Viane-Moerbeke–Galmaarden–Tollembeek–Herne–Enghien–Halle–Brussels-South–Brussels-Central–Brussels-North–Schaarbeek | 1x per hour | Stations in italics are served during peak hours |
| S7 | Mechelen–Muizen–Hofstade–Eppegem–Vilvoorde–Haren–Bordet–Evere–Meiser–Merode–Delta–Boondael–Vivier d'Oie–Saint-Job–Moensberg–Beersel–Huizingen–Halle | 1x per hour | |
| S8 | Brussels-South–Brussels-Central–Brussels-North–Brussels-Schuman–Brussels-Luxembourg–Etterbeek–Watermael–Boitsfort–Groenendaal–Hoeilaart–La Hulpe–Genval–Rixensart–Profondsart–Ottignies–Louvain-la-Neuve-Université | 2x per hour, 1x per hour at weekends | |
| S9 | Leuven–Herent–Veltem–Erps-Kwerps–Kortenberg–Nossegem–Zaventem–Diegem–Haren–Bordet–Evere–Meiser–Brussels-Schuman–Brussels-Luxembourg–Mouterij–Etterbeek–Boondael–Vivier d'Oie–Saint-Job–Linkebeek–Holleken–Sint-Genesius-Rode–De Hoek–Waterloo–Braine-l'Alleud–Lillois–Nivelles | 1x per hour | Weekdays |
| S10 | Dendermonde–Sint-Gillis–Lebbeke–Heizijde–Opwijk–Merchtem–Mollem–Asse–Zellik–Jette–Thurn en Taxis–Simonis–Brussels-West–Brussels-South–Brussels-Central–Brussels-North–Bockstael–Jette–Sint-Agatha-Berchem–Groot-Bijgaarden–Dilbeek–Sint-Martens-Bodegem–Ternat–Essene-Lombeek–Liedekerke–Denderleeuw–Erembodegem–Aalst | 1x per hour | |
| S20 | Leuven–Heverlee–Oud-Heverlee–Sint-Joris-Weert–Pécrot–Florival–Archennes–Gastuche–Basse-Wavre–Wavre–Bierges-Walibi–Limal–Ottignies | 2x per hour, 1x per hour at weekends | |
| S81 | Schaarbeek–Brussels-Schuman–Brussels-Luxembourg–Etterbeek–Watermael–Boitsfort–Groenendaal–Hoeilaart–La Hulpe–Genval–Rixensart–Profondsart–Ottignies | 1x per hour | Weekdays, Peak hours only |