This book is Michael Schmitz's overview of Roman engagements on the Danube frontier from the first landings in Illyria, to the end of the Imperial period. Later events including the Goths at Adrianople are touched on in the final chapter.
The Romans started their engagement in the Balkans by tackling piracy on the Dalmatian coast and modern-day Albania. This led to the creation of Illyricum and then the occupation of Greece after defeating Macedonia.
By the end of the Republic, Rome had started to expand northwards, fighting wars against the Pannonians, Raetia, Noricum, Dalmatians, Daesitiates, Breuci and others. This took the border to the Danube and Rome's biggest challenge - the Dacians and their allies, including the Sarmatians.
Not that the advance was easy given the nature of the terrain. Many tribes held fortresses high in the mountains and there were frequent rebellions. Rome never had enough troops to properly garrison the whole empire, and so tribes often rebelled when they thought Rome's attention was elsewhere. Emperor's were often required to revisit conquests and the Danube frontier always had a high priority, not least because of its closeness to Italy.
The Dacians were a particular challenge because they were able to build a state from the divergent tribes. Rome, like most empires, relied on divide and rule. Even when not unified they were strong enough to challenge the Romans on both sides of the Danube. The Dacian fortresses in the modern Transylvanian Alps were well sited and required the best of Roman siegecraft to overcome. The Dacians are believed to have used Roman deserters to train their troops in the Roman way of war. This is reflected in the strategies adopted by the most capable Dacian kings.
Several Roman emperors led punitive campaigns into Dacia, but it took two campaigns by Trajan to capture the region and turn it into a province. This province was something of salient, open to attack from all sides, and was eventually abandoned in AD 271.
The Danube frontier stretched over 2,800km, the longest natural border in Europe. Many attempts were made by the most famous Imperial Roman commanders to subdue the various threats, with mixed success. Eventually, Rome was unable to maintain the forces required and a defensive strategy resulted in the frontier being breached on a regular basis.
This is a good overview of the many and complex campaigns fought on and around this crucial frontier. There are more detailed accounts of the key campaigns including the wars in Illyricum and the Dacian Wars. But this is a good starting point.
A couple of pictures from my games of Hail Caesar using Dacian and Roman armies.