Steve Morison saw red and Millwall were left feeling blue after dropping potentially crucial Play-Off points in a dour Den draw against Bristol City.
Unfortunately it was very much a case of after the Lord Mayor's Show as Kenny Jackett's men were not only frustrated by a tireless hard-working City side, but now face losing top scorer Morison for three matches following his ill-timed challenge on sub Jamal Campbell-Ryce deep into injury-time.
On a night that saw sixth-placed Leeds United suffer a second successive loss at struggling Derby County, this was a perfect opportunity for The Lions to move even closer to the Play-Off spots.
And although Jackett's men have now cut the points deficit to just three, Nottingham Forest have crept ahead of Millwall into seventh place.
This was a night when patience, experience and cool heads were going to be key, but it simply turned out to be one of those frustrating games where very little went right for Millwall, although not for the want of trying.
"I thought in the first half we had to defend and did defend well," said Jackett.
"I was looking for the big build-up in the second half and to a degree it came. We had lots of corners, lots of pressure, but we didn't quite get that break."
Jackett was forced to make two changes from the side that beat Leeds United at the weekend with both Jack Smith (hamstring) and Kevin Lisbie (ankle) ruled out through injury.
Alan Dunne stepped in following a two match suspension to fill the right-back berth whilst Josh McQuoid was handed only his third start in a Lions shirt.
In a frenetic first-half it was the visitors who settled into their stride and recorded their first corner with barely 45 seconds on the clock.
Keeper David Forde reacted quickly barely one minute later, sprinting out to clear from the toes of Nicky Maynard after the Robins striker burst through, although the linesman did belatedly hold his flag up for offside.
On eight minutes a somewhat wayward crossfield pass from James Henry was intended for Tony Craig, but intercepted by Albert Adomah who powered forward and despatched a teasing cross that Maynard headed over from 10 yards.
The Lions mustered their first half-chance after 17 minutes; Henry's persistence on the right enabling the winger to whip over a cross that Morison glanced wide.
Morison and strike partner McQouid nearly conjured up an opening goal a couple of minutes later with Morison's delightful reverse pass picked up by the young hitman who turned smartly and hit an angled left-foot drive wide of the far post.
Paul Robinson headed narrowly wide from Townsend's 34th minute free-kick before City squandered a glorious opportunity to break the deadlock.
Left-back Craig, who was replaced at the break by Scott Barron, miscued a header, the ball fell invitingly for Brett Pitman but with a clear sight of goal, he softly scooped the ball straight into the grateful hands of keeper Forde.
After the break Millwall did have more zip and urgency about their play with Barron's deep cross held well by keeper David James and then Tamika Mkandawire saw his fierce drive deflected over for one of nine second-half corners.
At the other end Forde did well to parry a low drive from Martyn Woolford with Robinson's outstretched right leg steering the loose ball to safety.
Morison then lobbed wide following a long upfield punt by Robinson and James Henry's left foot curler flew narrowly over as The Lions tried to work up a head of steam.
But it was the visitors who spurned a gilt-edged opportunity to clinch all three points four minutes from time.
The flag stayed down as Maynard sprinted through a static defence, but keeper Forde raced out of his goal and spread himself brilliantly to smother the striker's effort.
That relief turned to a fresh sense of expectation when five additional minutes of extra-time were held up by the fourth official.
But with just two of those minutes gone, a rush of blood to the head by Morison saw the striker's rash challenge on Campbell-Ryce deep in his own half reduce The Lions to 10 men, and any realistic hope of grabbing a late winner were effectively gone.
Although the final whistle produced a smattering of boos from the home fans, there are still five games to go, 15 points up for grabs and most definitely everything still to play for starting at Coventry City this Saturday.
Millwall: Forde, Dunne, Craig (Barron, 46mins), Trotter, Robinson, Ward, Townsend (Bouazza, 82mins), Mkandawire, McQuoid (Harris, 62mins), Morison, Henry. Subs not used: Mildenhall, Purse, Abdou, Marquis.
Booking: McQuoid (21mins)
Sending off: Morison (90+2mins)
Bristol City: James, Stewart, Skuse (Cisse, 71mins), Elliott, Adomah, Woolford (Clarkson, 88mins), Spence, McAllister, Maynard, Pitman (Campbell-Ryce, 74mins), Nyatanga. Subs not used: Gerken, Stead, Edwards, Johnson.
Bookings: Skuse (49mins), Woolford (57mins), McAllister (79mins)
Ref: K. Stroud
Att: 11,108 (away 496)