La stazione di San Severo è una stazione di media grandezza della linea adriatica. Serve la città di San Severo, l'area del Tavoliere settentrionale e i centri del settore nord del Gargano.
Si trova in Piazza della Costituzione (già Piazzale Dalmazia), in zona di media periferia ed è collegata al centro cittadino mediante il viale Matteotti. Il piazzale della stazione è capolinea di autobus per il trasporto pubblico urbano ed extraurbano.
Il 19 giugno 1927 lo scalo merci fu raccordato con la tranvia San Severo-Torremaggiore, il cui capolinea era attivo dal 1925 sul piazzale antistante la stazione. L'impianto funzionò fino al 31 marzo 1962.
La stazione, di transito, ha sei binari passanti con quattro marciapiedi (1, 2-3, 4-5, 6), ciascuno dei quali è parzialmente coperto da una elegante pensilina d'epoca in ferro verniciato (quella del secondo marciapiede è più lunga delle altre); il terzo marciapiede è rialzato. C'è un solo sottopassaggio. Quattro binari (1-4) sono impiegati da Trenitalia e due (5-6) dalle Ferrovie del Gargano, delle quali la stazione è capolinea. Adiacente al fascio binari viaggiatori c'è il parco rotabili e l'officina della ferrovia garganica, mentre un'ampia zona destinata al carico e scarico delle merci, completa di edifici di servizio (tra cui un magazzino merci), affianca piazza della Costituzione.
Il semplice fabbricato per i viaggiatori, edificato nell'Ottocento, è stato più volte ampliato e profondamente rimodernato, soprattutto dopo il grave incidente avvenuto il 3 aprile 1989, quando alle 16.12 il treno locale Bari Centrale-San Severo, entrando in stazione ad alta velocità, deragliò travolgendo l'edificio e causando la morte di otto persone e il ferimento di oltre venti (la sciagura è ricordata da una lapide coi nomi delle vittime e da un piccolo monumento in pietra, collocato a lato della palazzina). Il fabbricato offre i servizi di biglietteria (normale e automatica), una sala d'attesa, i servizi igienici, un bar e un'edicola.