Don't let "perfect" be the enemy of "good enough."
Rail is not perfect for everything; however, it is a heck of a lot better than 100+ trucks all driving to the same place that a single train could go much more efficiently.
Ships aren't perfect either, but you don't see anyone driving a truck across the pacific do you?
Replace the majority of trucks with rail and use trucks for last mile (from the rail terminal to delivery point), or truly remote deliveries (from the nearest rail yard! even if that is 500 miles away).