Lake Forest police said the train collided with a front-end loader around 12:05 p.m. near Everett and Waukegan as it was heading to Chicago.
Passengers said the train came to an abrupt stop. Chopper 7 was over the scene.
The construction vehicle's operator, who was working on the track, was taken to a local hospital with non-life-threatening injures, police said.
All train traffic was stopped on the Milwaukee District North line as a result of the crash.
Police asked the public to avoid the area while investigators process the scene.
Further information was not immediately available.