Four years old is generally too young to get his own train set. If he has had a lot of exposure to the model railroading scene, and you know him to be fairly gentle, then maybe. Otherwise, I'd recommend upgrading to a better, more grown-up toy train.
I got one of these about 10 years ago, and is a good choice to bridge the gap between toys and models. Unfortunately, after a healthy amount of digging, I found the manufacturer and it appears that either their site is incomplete, or they've stopped selling them, but I'm seeing these popping up on many reselling sites. These things are durable, reliable and fairly realistic.
http://www.amazon.com/Sante-C44-9W-Diecast-Train-Scale/dp/B002Z61LT6