Mark Hughes' 10-man Bantams came away from the Broadfield Stadium with a point, after being held to a 0-0 draw by Crawley Town on Good Friday.
In a scrappy yet hot-tempered affair, both teams had chances to claim all three points, but neither proved able to take full advantage, resulting in the stalemate.
The Red Devils started the better of the two sides and almost opened the scoring through Aramide Oteh, if not for a block by Brad Halliday.
City’s first chance to break the deadlock came courtesy of top scorer Andy Cook. After a quick passing sequence between Jamie Walker and Alex Gilliead, the ball made its way to Cook whose effort was saved as City began to build momentum in the game.
Just after the half-hour mark came the Bantams' best opportunity of the game. Matt Derbyshire did well to pull back for Cook, who dummied away from two defenders but saw his powerful effort brilliantly saved by Corey Addai.
City grew into the half and, if not for the offside flag, would have come close again to drawing first blood through Derbyshire after a wicked cross from Brad Halliday was headed inches over the bar.
The home side came back out revitalised for the second half and, only a few minutes in, James Tilly scuffed his shot after Ashley Nadesan had let the ball run past him.
The visitors came back strong and Scott Banks remained a threat on the right-hand side, forcing Addai into another smart stop after beating his defender inside the area.
Cook was again given the opportunity to add to his goal tally just before the hour mark, but he dragged his half-volley wide when being found in behind by Derbyshire.
The West Sussex side were then denied taking the lead after a wonderful save from City’s No.1 Harry Lewis. Harry Ransom connected with a free-kick swung deep to the far post, though Lewis was equal to it.
Just before the board went up for added time, City were reduced to 10 men after Matty Platt picked up a second booking for a late challenge on Tom Fellows.
The dismissal made for a nervy final few minutes for the Bantams, though they held on to take a clean sheet and a point into their Easter Monday visit of Sutton United.
CITY: Harry Lewis, Brad Halliday, Liam Ridehalgh, Matty Platt, Richie Smallwood (C), Andy Cook, Jamie Walker (Vadaine Oliver 83’), Alex Gilliead, Scott Banks (Ciaran Kelly 83’), Matt Derbyshire (Dara Costelloe 64’), Sam Stubbs. Subs not used: Colin Doyle, Tolaji Bola, Ryan East, Harry Chapman.
CRAWLEY: Corey Addai, Kellan Gordon (Brandon Mason 82’), Dion Conroy, James Tilley (Tom Fellows 70’), Jack Powell (Anthony Grant 82’) , Ashley Nadesan, Harry Ransom, Dom Telford (Caleb Chukwuemeka 70’), Aramide Oteh, Rafiq Khaleel, Mazeed. Subs not used: Ryan Schofield, Jack Roles, Jack Spong.
ATTENDANCE: 3,644 (809 City supporters).