Philadelphia Union had the territorial control, the possession edge and a flood of set-piece opportunities, but D.C. United dug in for a hard-earned 0-0 draw at Subaru Park on Saturday night in Major League Soccer.

In a fixture short on finishing but not on tension, the Union pushed the tempo for much of the evening and pinned D.C. United back for long spells. The home side finished with 61.9 percent possession, 17 total shots and 13 corners, yet they could not turn that pressure into the decisive goal. D.C. United, meanwhile, offered little in attack but left Chester with a legitimate point after a disciplined defensive display.

The first half developed into the kind of contest Philadelphia typically likes at home: aggressive, front-footed and played largely in the opponent’s half. The Union moved the ball with purpose and kept forcing dead-ball situations, but the final touch was missing. D.C. United struggled to establish sustained possession and rarely threatened going forward, instead relying on their shape and compactness to keep the hosts at bay.

As the pressure mounted, frustration began to show for the visitors. Tai Baribo was shown a yellow card in the 35th minute, and Joao Peglow followed him into the book two minutes later in the 37th. Those cautions reflected a scrappy spell in which D.C. United were increasingly forced into reactive defending.

Philadelphia continued to ask questions after the interval, and the pattern barely changed. The Union kept sending balls into dangerous areas and finished with 12 shot assists, but D.C. United held firm. Nikola Markovic was booked in the 60th minute as the visitors continued to walk a disciplinary tightrope, yet their back line and overall defensive structure remained intact.

For all of Philadelphia’s dominance in the numbers, one statistic captured the story most clearly: only four of their 17 shots tested the goalkeeper. D.C. United had just six shots all night and failed to register a single effort on target, but they will still view this as a useful away result given how much time they spent without the ball.

There were no goal scorers to celebrate and no headline moments of attacking brilliance, but the fixture still carried a steady undercurrent of intensity. Every Union corner raised the volume inside Subaru Park, every clearance from D.C. United felt increasingly important, and as stoppage time ticked away it became clear this would be a night defined by resistance rather than incision.

In the end, Philadelphia may feel it was an opportunity missed after controlling so many phases of the match. D.C. United, by contrast, can take satisfaction from their organization and resilience on the road. It was not a classic, but it was a draw earned the hard way.

Final score: Philadelphia Union 0-0 D.C. United