This paper aims to develop a multi-objective model for scheduling cargo trains faced by the costs of tardiness and earliness, time limitations, queue priority and limited station lines. Based upon the Islamic Republic of Iran Railway Corporation (IRIRC) regulations, passenger trains enjoy priority over other trains for departure. Therefore, the timetable of cargo trains must be determined based on certain passenger trains. In addition, the introduced model considers extra platforms in each station through the travel route. This model has been run in IRIRC and the results have illustrated a great improvement in comparison to status quo. The model has been verified and validated against the real system by conducting t-tests. Furthermore, sensitivity analysis of the model reveals a set of optimization alternatives for scheduling cargo trains. Reduced routing traffic, optimum number of cargo trains, enhanced customer lead times, maximum trains capacity are retrieved from the model in order to obtain an integrated scheduling for cargo and passenger trains.