Stacja posiada rozbudowany układ torowy z wieloma bocznicami i torami dodatkowymi i postojowymi[1]. Według klasyfikacji PKP ma kategorię dworca lokalnego[2]. Do 2017 stacja kolejowa posiadała dwa perony w ciągu linii kolejowej nr 6 z trzema krawędziami peronowymi – boczny peron 1 i wyspowy peron 2. Nad torami były zbudowane dwie kładki. Peron 3 (wyspowy) jest położony na uboczu względem dworca w ciągu linii kolejowych 34 i 55. Do 1 kwietnia 1993 służył do obsługi pociągów pasażerskich relacji Ostrołęka – Małkinia – Siedlce[3]. W 2004 PKP przekazały samorządowi województwa mazowieckiego odcinek linii nr 55 od Małkini do Sokołowa Podlaskiego, po czym była ona sukcesywnie rozbierana[4]. W jej śladzie na odcinku Małkinia – Kosów Lacki powstała droga wojewódzka nr 627.
13 czerwca 2017 PKP Polskie Linie Kolejowe podpisały umowę na modernizację odcinka linii kolejowej nr 6 Sadowne – Czyżew prowadzonej w ramach projektu Rail Baltica wraz z budową lokalnego centrum sterowania w Małkini[8]. W sierpniu 2017 zamknięto tor nr 1 (w kierunku Białegostoku) i przystąpiono do rozbiórki peronu 1[9]. Jednym z warunków prac było pozostawienie możliwości mijania się pociągów w Małkini, dlatego podczas pierwszej fazy modernizacji czynny był peron 2 i jego obydwie krawędzie. Nowy peron 1 ma już dwie krawędzie i został oddany do użytku 10 marca 2019 r. Wówczas zaczęły się prace przy peronie 2 i przyległych mu torach. Do użytku pasażerów jest budowane przejście podziemne na perony wraz z pochylniami[10][11].
Do 2009 Małkinia była stacją stykową, tj. krańcową dla pociągów osobowych zarówno z Warszawy, jak i z Białegostoku. Od 23 lutego 2009 pociągi osobowe jadące z Białegostoku dojeżdżają jedynie do stacji Szepietowo[13]. Był to efekt przerzucenia na samorządy obowiązku finansowania pociągów regionalnych[14], braku porozumienia między marszałkami województw mazowieckiego i podlaskiego oraz decyzji Podlaskiego Zakładu Przewozów Regionalnych o zaprzestaniu obsługi na terenie województwa mazowieckiego[15].
Ponadto w latach 2014–2015, podczas I etapu modernizacji linii nr 6 oraz całkowitego zawieszenia ruchu kolejowego na odcinku Tłuszcz – Sadowne Węgrowskie[16], była to krańcowa stacja skróconych pociągów dalekobieżnych Białystok – Małkinia – Białystok, gdzie miały miejsce przesiadki na zastępczą komunikacją autobusową w relacji Warszawa – Małkinia – Warszawa[17].