The result lifted Lokomotiv above third-placed Rostov on goal difference and left both teams on 13 points from six games, one less than champions CSKA Moscow who beat Tom Tomsk 2-1 on Saturday.
Uzbek left back Vitaly Denisov set up three of the goals as Lokomotiv ran riot in the second half after Ecuador striker Felipe Caicedo headed them into a 44th-minute lead thanks to good work by livewire Morocco midfielder Mbark Boussoufa.
Aleksandr Samedov drilled in a penalty in the 53rd to make it 2-0 after Caicedo was hauled down by Kamil Agalarov, who was sent off, and Denisov swung in a low cross four minutes later for Brazilian Maicon to sweep in from close range.
A brief scuffle broke out between rival players on the hour as Rostov defender Alexandre Lolo was sent off for a second yellow card when he fouled Maicon and Dmitri Tarasov capitalised almost instantly as he headed home a perfect cross by Denisov.
The pacy Denisov capped a fine individual performance with another darting run down the left flank in the closing stages, allowing substitute Roman Pavlyuchenko to seal the rout with a scuffed shot from eight metres.
Lokomotiv visit fifth-placed Zenit St. Petersburg in an eagerly awaited clash on Sunday while Rostov are away to Dynamo Moscow.