In front of 76,500 fans at Melbourne Cricket Ground, French forward Martial struck in the first half while Marcus Rashford and Jadon Sancho both collected their second goals of the pre-season tour after the restart.
Joel Ward pulled one back for Palace, but they were always chasing a game that saw United reduced to 10 men in the dying minutes after Will Fish was sent off for a deliberate foul.
The friendly victory was Ten Hag’s third since taking over after their 4-0 thumping of Liverpool in Bangkok and a 4-1 win over Melbourne Victory.
In contrast, it was a second straight defeat for Patrick Vieira’s young Palace side, who crashed 2-0 to Liverpool in Singapore on Friday.
Dutchman Ten Hag is beginning to stamp his mark on the Old Trafford side, with his team — who finished a disappointing sixth last season in the Premier League — producing some fluid, one-touch football.
Goalkeeper David de Gea returned after missing the Victory game with a niggle.
New left-back Tyrell Malacia began ahead of Luke Shaw, while Rashford was back in the starting line-up after scoring as a substitute against Victory, partnering a rejuvenated Martial and Sancho in Cristiano Ronaldo’s absence.
Christian Eriksen and Lisandro Martinez, Ten Hag’s other new signings, are not in Australia.
Vieira has a youthful squad in Australia, with a number of senior players not making the trip.
United made a confident start, dominating early possession, with Palace goalkeeper Jack Butland making a fine stop from Martial after Brazilian Fred’s pass spilt the defence.
But the save ended Butland’s game, forced to leave the pitch after treatment on his hand.
The 26-year-old Martial — whose career at United looked over after spending the end of last season on loan at Sevilla — got the breakthrough seven minutes later.
He chested down a wonderful floating delivery from Diogo Dalot to fire past Palace’s third-choice keeper Remi Matthews after a well-worked build-up.
United were hungry for goals, creating plenty of opportunities with Harry Maguire and Rashford both going close.
Against Liverpool and Victory, Ten Hag made wholesale changes at half-time, but this time he made just one, with Donny van de Beek on for Scott McTominay.
Van de Beek was involved in the second goal, with a sublime team move finished by Rashford tapping into an empty net.
Sancho got the third soon after on a counter-attack with Martial providing the through ball.
United head to Perth next to play Steven Gerrard’s Aston Villa, who beat Leeds 1-0 to kickstart their pre-season. Palace also travel to Perth, to face Leeds.