Over 260 trains were cancelled due to bad weather conditions on Monday, the railways said.
The services were affected as visibility was reduced considerably on Monday morning due to a dense layer of fog that extended from Punjab and adjoining Rajasthan to Bihar through Haryana, Delhi and Uttar Pradesh.
"A total of 267 train, including 82 express trains, 140 passenger trains and 40 sub-urban trains, were cancelled," a railways official said.
On Sunday, around 335 trains were delayed, 88 cancelled, 31 diverted and 33 short terminated due to foggy weather.
Visibility levels dropped to zero metres at Bhatinda and Agra; 25 metres at Patiala, Chandigarh, Ambala, Bhiwani, Safdarjung, Ridge, Ganganagar, Varanasi, Fursatganj and Bhagalpur, and 50 metres at Hisar, Karnal, Palam, Meerut, Lucknow, Bahraich and Patna.
According to the weather office, 'very dense fog' is when visibility is between 0 and 50 metres, between 51 and 200 metres is 'dense', between 201 and 500 metres 'moderate', and between 501 and 1,000 metres 'shallow'.