Sorry I was a bit aggravated by the replies describing european armies of the time only as knights and then some rabble, so I skipped some posts. What happened with the Magyars, not only done by the Ottonians but also the Luitpoldinger Dukes of Bavaria before them, was to ambush and force them to battle at unfavourable points for the Magyars, when they were on the return to the steppes. To only entrench oneself like the Khwarezmids did has proven to be fatal. Henry I. first did so in 926 when Magyars raided Saxony and he had to no other option but to sit it out in Werla, and only when his troops captured an Magyar captain (due to unknown circumstances as the sources dont tell us anything about this) he was able to force an truce with the Magyars.
He did beat them in 933 at the famous Battle of the Riade, though it were two seperate divisions of an Magyar army that were defeated then. He more or less screened his heavy cavalry (Loricati) with lighter cavalry so that they could close with the horse archers.
One of the most important things a army has to possess is to remain disciplined if fighting against an army of this kind. Otto the great won the Battle of the Lechfeld but only allowed his army to pursue the (in good order) "fleeing" Magyars for a short distance. This way he avoided their tactics of the feigned retreat, which brought disaster to generals before him, such as the Eastern Franks in the Battle of the Lechfeld in 910. What destroyed the Magyars were the many points of resistance, along rivers and fords and forests. From their castles and fortresses the Bavarians harassed and forced the Magyars to battle when they split into smaller groups by then.