Conor Hourihane scored two free kicks either side of a Yussuf Poulsen goal, before John McGinn finished off an impressive win for Villa.
Julian Nagelsmann’s side almost took the lead with the game’s first real chance when Konrad Laimer whipped a ball in to Timo Werner from the right, but was cleared by Björn Engels before Germany international could tap in.
Villa responded by taking the lead themselves at the other end, Hourihane curling a low free kick past the wall and into the bottom corner.
Marcel Sabitzer tested Tom Heaton from 20 yards, but the newly-signed goalkeeper tipped the ball clear of danger. The leveler followed soon after, Poulsen following up from Werner’s deflected effort.
The two sides came out unchanged for the season half and created chances at both ends, McGinns firing into the side netting and Christopher Nkunku just wide. Heaton denied Sabitzer once more, clawing his volley from the bottom corner.
New signing Philipp Tschauner was brought on in the 72nd minute to make his RBL debut, but was beaten twice in the closing stages – a second Hourihane free kick and a curling effort from McGinn.
"Even though we lost, I'm pleased with the warm welcome. A few things still have to come together, but we showed some good moves that we hope to turn into positive results as soon as possible."
0-1 Hourihane (16'), 1-1 Poulsen (28'), 1:2 Hourihane (82'), 1-3 McGinn (89')
15,811 at the Red Bull Arena