I would say the Mongols easily. They were far to mobile for the Romans to effectively deal with. Of course it might not be exactly a fair scenario for the poor Romans, as the Mongols are a medieval force while the Romans are a classical one. Before the reforms in 3th-4th century the Roman army would have serious problems against a Mongol army. The late Roman army used more cavalry and had specialized archer units while the regular heavy infantry units apparently had their own missile-armed men too. If the Western Empire had survived to the 1200s, who knows what it's Army would have looked like. The only Roman army that might stand a chance against Mongols would be the 7th century AD or (more likely) early 11th century AD armies (Justinian and Basil Bulgaroktonos times, respectively). Yes, Byzantines armies. They relied on cavalry, had plenty of archers (actually almost all of Basils footmen would use the bow) and had highly sophisticated tactics. In Basil's times they were even accustomed fighting steppe armies and they all had, more or less, the same basic outfit. Apparently the eastern Roman army had more archers compared to the western army.
Granted, the Roman Legion had proper quantities of missile, disciplined heavy infantry as well as cavalry, but still, all odds would be in favor of the Mongols. Standard Roman armies (legion and such) wouldn't stand a chance in the million facing the horde. They would be massacred to the last man. The Romans would fall due to the simple fact that they have a severe lack of cavalry. That has been Rome's weakness throughout its history.
The mongols on the other hand are more or less have an eitire army of lightly armored horsemen. They would just do what they have done to the Europeans in their invasion or Europe. Skirmish the enemy to death and end up surounding them in which case a slaughter would ensue. Also... the Mongols employed the use of gun powder and advanded siege technology from the conquored Chineese. That is yet another great advantage. Even though legionaries wouldn't follow a feigned retreat, they couldn't do much against Mongol skirmishing, and since these also had armour piercing arrows and composite bows, it would give them trouble. Another problem for the Mongols would be the great flexibility of the cohort system, able to take almost every charge from every direction.
Now, if we're talking about the Roman army at the time of the Great Migration, then there's a whole different pie to eat. Ill take for example, the Sarmatian tribes, formost among them the Roxolani and Iazyges. They fought like the Parthians and the Sassanids after them, being of Skythian (or a related people) origin. They were also the master of the 'Parthian' shot and the kontos. They were also a pure steppe people, fighting in a loose federation against or with the Romans. They came accross the Romans many times, their first major stance towards Rome was as ally of Mithridates of Pontus. They were the ones who gave him solace in the Bosphoric realm (Crimea).
However, they never did anything decisive to the Romans, and up until they were conquered by Trajan in his second Dacian war, they were usually defeated by the Romans, although - being steppe people - not conclusively. However, when Trajan invaded Dacia in the second Dacian war, important Sarmatian tribes like the Roxolani and Iazyges had migrated into Dacia, and fought alongside the Dacians (I think). The Romans defeated them through good use of auxiliary units, as well as closing in quick on their enemy to minimise their exposion in the approx. 200m range of the Sarmatian composite bow.
The same strategy was used against the Parthians and the Sassanians, resulting in the fact that they could not use their potent ranged power and thus the clibanarii faced fresh, well-formated troops, which they could not break without having them tired and battered by the horse archers and skirmishers that they levied. However, Since the Parthians gave the Romans gigantic problems when facing them in full force and in the pure sense of a "Parthian army" (something not true anymore when Septimus Severus captured Ctesiphon, because the Parthian king had lessened power), I'd say the Mongols, with their more advanced tactics, wouldn't have an all too big problem with the Romans.
Granted, the Roman Legion had proper quantities of missile, disciplined heavy infantry as well as cavalry, but still, all odds would be in favor of the Mongols. Standard Roman armies (legion and such) wouldn't stand a chance in the million facing the horde. They would be massacred to the last man. The Romans would fall due to the simple fact that they have a severe lack of cavalry. That has been Rome's weakness throughout its history.
The mongols on the other hand are more or less have an eitire army of lightly armored horsemen. They would just do what they have done to the Europeans in their invasion or Europe. Skirmish the enemy to death and end up surounding them in which case a slaughter would ensue. Also... the Mongols employed the use of gun powder and advanded siege technology from the conquored Chineese. That is yet another great advantage. Even though legionaries wouldn't follow a feigned retreat, they couldn't do much against Mongol skirmishing, and since these also had armour piercing arrows and composite bows, it would give them trouble. Another problem for the Mongols would be the great flexibility of the cohort system, able to take almost every charge from every direction.
Now, if we're talking about the Roman army at the time of the Great Migration, then there's a whole different pie to eat. Ill take for example, the Sarmatian tribes, formost among them the Roxolani and Iazyges. They fought like the Parthians and the Sassanids after them, being of Skythian (or a related people) origin. They were also the master of the 'Parthian' shot and the kontos. They were also a pure steppe people, fighting in a loose federation against or with the Romans. They came accross the Romans many times, their first major stance towards Rome was as ally of Mithridates of Pontus. They were the ones who gave him solace in the Bosphoric realm (Crimea).
However, they never did anything decisive to the Romans, and up until they were conquered by Trajan in his second Dacian war, they were usually defeated by the Romans, although - being steppe people - not conclusively. However, when Trajan invaded Dacia in the second Dacian war, important Sarmatian tribes like the Roxolani and Iazyges had migrated into Dacia, and fought alongside the Dacians (I think). The Romans defeated them through good use of auxiliary units, as well as closing in quick on their enemy to minimise their exposion in the approx. 200m range of the Sarmatian composite bow.
The same strategy was used against the Parthians and the Sassanians, resulting in the fact that they could not use their potent ranged power and thus the clibanarii faced fresh, well-formated troops, which they could not break without having them tired and battered by the horse archers and skirmishers that they levied. However, Since the Parthians gave the Romans gigantic problems when facing them in full force and in the pure sense of a "Parthian army" (something not true anymore when Septimus Severus captured Ctesiphon, because the Parthian king had lessened power), I'd say the Mongols, with their more advanced tactics, wouldn't have an all too big problem with the Romans.