[revised 5 Jan 2021]
For Hall’s Ferry Road, you are allowed to bring two 24-unit corps. The timer suggests you have only until noon to take all three flags. However, after 1200 you get extra time, to 1800, and during this period can press “finish” the moment you hold all three flags, even if the contested timer is running for one or more flags.
I prefer to go light on artillery in this campaign, because it is too slow-moving to keep up with the offensive maneuvers I prefer, and because the Union has an ever-increasing ability to destroy CSA artillery with counter-battery fire. At this stage of the campaign I am also mainly concerned with maximizing Union casualties, and to do that I need a large infantry force that can sweep across the map, destroying all in its path.
The easiest way to win this battle while minimizing CSA casualties is to lie low until 11 am or so, then use 15-20 strong brigades to take the first flag on the small hill near the middle of the map. When the flag is taken, move up CSA artillery so it can hit the fortifications for the other two flags. Move up the rest of your infantry so it is not too far from the other flags, and when they are rested—and if it is after 1200—have them surge in two large groups towards both flags. As soon as both flags are in CSA’s possession, click finish for the relatively inexpensive win.
To maximize Union casualties, slide your force along the left edge of the map while dislodging Union brigades and artillery from the near/middle flag. Slowly march west to east, overwhelming the back/left redoubt and taking that flag, and then circling the right redoubt and taking that flag. It can be tricky, requiring quite a bit of micro, to avoid capturing that last flag until you have destroyed virtually all the Union brigades on the map. In any case, you have 30 minutes from capturing the flag until the end of the battle.