A truck driver has been charged over a "tragic" pile-up on the M5 motorway in Sydney that left a 10-year-old boy dead and a 13-year-old girl in hospital.

The 26-year-old male truck driver will face court on Thursday on a range of charges, including dangerous driving occasioning death and negligent driving occasioning death, following the fatal crash on Wednesday morning.

Emergency services were called to the east-bound lanes of the M5 at Riverwood, just east of Belmore Road, about 8.20am on Wednesday following reports of a crash between four vehicles - a Volvo Prime Mover and three cars.

Acting Assistant Commissioner Paul Glinn said on Wednesday that initial investigations indicated that the truck was driving east along the M5 in slow-moving traffic when it was involved in a collision "with the rear of a ... vehicle which contained three occupants".