By Phil McNulty
Chief football writer at St Andrew's
Craig Gardner's extra-time goal sent Birmingham City to their first major Wembley final for 55 years and set up a Carling Cup final meeting with Arsenal.
Avram Grant's West Ham United arrived at St Andrew's protecting a 2-1 lead from the semi-final first leg - and looked on course for victory when Carlton Cole's spectacular strike gave them an interval lead and extended their advantage in the tie.
Birmingham boss Alex McLeish, who had listened to his side jeered off after a desperate opening period, responded by introducing the giant figure of Nikola Zigic with the express purpose of unsettling the previously undisturbed West Ham defence.
What he lacks in technical ability the Serb makes up for in sheer presence and he was the unlikely figure who sparked a dramatic Birmingham revival that carried them to Wembley on a wave of euphoria.
Lee Bowyer levelled the game on the night with an emphatic finish on the hour and Roger Johnson's powerful header 11 minutes from the end of normal time restored equality to the semi-final.
Lifelong Birmingham fan Gardner, brought up just four miles from St Andrew's, thought he had clinched a place in the final only to see his shot turned on to the post by Robert Green in the final moments as extra-time beckoned.
It was the second time he had struck the woodwork, but he was the hero four minutes into the extra period with another low drive that Green was powerless to prevent going in.
West Ham, so ordered early on, wasted chances to mount a revival of their own through Scott Parker and substitute Kieron Dyer - and eventually ran out of energy and ideas.
Birmingham's jubilation at the conclusion of a dramatic night was understandable as they can now prepare for their first major Wembley occasion since the 1956 FA Cup Final defeat against Manchester City.
They lost a penalty shoot-out against Liverpool in the 2001 Worthington Cup Final in Cardiff, but they will relish their return to Wembley and deserve huge credit for the way they lifted their spirits after looking down and out at half-time.
McLeish proud of Birmingham display
West Ham boss Grant, given a vote of confidence by the Upton Park board after speculation he was to be sacked, must now raise the morale of his shattered troops after this devastating setback.
Birmingham needed a goal to bring the tie back level, but it was West Ham who demonstrated all the early ambition and composure - with youngster Zavon Hines twice testing Ben Foster after escaping the attentions of his markers.
Cole, so often the sleeping giant but looking in the mood when faced with a Birmingham defence in which Martin Jiranek was given a rare start, gave a warning of what was to come with a flashing drive that was only inches off target.
And he produced a moment of individual brilliance to provide West Ham with the goal their dominance deserved after 31 minutes. Cole took Wayne Bridge's throw-in before turning and sending an angled shot beyond Foster from 25 yards.
Birmingham were simply unable to enjoy any periods of sustained possession and only the woodwork saved them from falling further behind when Hines flicked on Mark Noble's free-kick.
The frustration of the home team was mirrored by the home fans at St. Andrew's as referee Howard Webb's half-time whistle was greeted with a resounding chorus of disapproval.
McLeish's answer to Birmingham's lack of inspiration was to introduce Zigic for Matt Derbyshire. It hardly added an edge of unpredictability to their approach but it had the desired effect.
Set-piece errors cost us - Grant
Zigic's knockdown created an opening for Gardner but his effort from the edge of the area struck a post. He then won another aerial challenge to set up Cameron Jerome, who shot hopelessly off target.
The pressure was building, though, and West Ham's defence was finally breached just before the hour as Bowyer struck. Birmingham had loud penalty appeals rejected when Bridge appeared to handle, and when West Ham failed to deal with the resulting corner Bowyer lashed a powerful finish high past Green.
The entire mood of the game had changed as Birmingham exerted relentless pressure and Green did well to dive low to his right to turn away a long-range shot from the outstanding Barry Ferguson.
West Ham broke the shackles that had kept them in their own penalty box for most of the second half as Cole brought a save from Foster - but it was a rare moment of respite as Birmingham put Grant's side under siege.
Birmingham were transformed from the strugglers of the opening 45 minutes and they brought the tie level with 11 minutes left as Johnson rose to power a header beyond Green.
Cup final is unbelievable - Gardner
And as West Ham rocked it needed more desperate defending as Jerome bore down on Green in search of the goal that could seal a place at Wembley.
Gardner thought he had won the tie for Birmingham with virtually the last kick of normal time, but once again he was denied by the woodwork after a vital touch from West Ham keeper Green.
He refused to be discouraged and finally got his reward four minutes into extra-time with a repeat of his last-ditch effort and this time it carried too much power for Green.
West Ham now needed a goal and Parker was almost the provider with a neat turn in the area only to shoot over from eight yards. Substitute Kieron Dyer was then guilty of an even more wasteful finish when he volleyed over from close-range with only Foster to beat - and West Ham's supporters ready to celebrate.
As the Hammers pushed forward with time running out, Birmingham substitute Kevin Phillips raced unattended towards goal but Green was equal to the task with an important block.
The miss was not to prove costly and the party started around St Andrew's as soon as the final whistle sounded.
120:00+1:53 The referee blows for the end of the match.
120:00+1:08 Short corner taken by David Murphy from the left by-line.
118:59 Free kick awarded for an unfair challenge on David Murphy by Mark Noble. Direct free kick taken by Liam Ridgewell.
117:31 David Murphy takes a shot. Save by Robert Green. Short corner taken by David Murphy.
116:23 Jean Beausejour sends in a cross.
115:32 Carlton Cole challenges Roger Johnson unfairly and gives away a free kick. Ben Foster takes the free kick.
115:32 Booking Carlton Cole is cautioned.
113:27 Corner taken left-footed by Wayne Bridge from the right by-line, Effort on goal by Carlton Cole from 6 yards. Save by Ben
112:56 Centre by Kieron Dyer, Barry Ferguson makes a clearance.
111:45 Scott Parker has an effort at goal from just inside the box that misses to the right of the goal.
111:08 The ball is swung over by Julien Faubert.
110:09 A cross is delivered by Scott Parker, Roger Johnson makes a clearance.
109:31 Unfair challenge on James Tomkins by Cameron Jerome results in a free kick. Free kick taken by Robert Green.
108:49 A cross is delivered by Julien Faubert, clearance by Liam Ridgewell.
108:01 Matthew Upson challenges Nikola Zigic unfairly and gives away a free kick. Barry Ferguson crosses the ball from the free kick
right-footed from right wing.
107:05 Lee Bowyer has an effort at goal from outside the area which goes wide right of the goal.
Correction - 106:00 Booking James Tomkins goes into the book for dissent.
106:00 Booking James Tomkins goes into the referee's book for unsporting behaviour.
Extra Time Started
105:01 The match restarts for the second half of extra time.
105:01 Substitution Benni McCarthy on for Jonathan Spector.
Extra Time Half Time
105:00+0:54 A cross is delivered by Julien Faubert, clearance made by Barry Ferguson.
105:00+0:37 The ball is crossed by Julien Faubert, clearance by Martin Jiranek.
105:00+0:31 Centre by Julien Faubert.
105:00+0:22 The ball is sent over by Wayne Bridge, Roger Johnson manages to make a clearance.
104:26 The ball is delivered by Julien Faubert.
103:40 Foul by Nikola Zigic on Gary O'Neil, free kick awarded. Robert Green restarts play with the free kick.
103:02 The ball is swung over by Gary O'Neil, Shot on goal by Kieron Dyer from inside the box goes harmlessly over the target.
102:05 A cross is delivered by Gary O'Neil.
101:17 The ball is sent over by Julien Faubert.
100:08 Wayne Bridge delivers the ball, Effort from deep inside the area by Scott Parker misses to the right of the target.
100:08 Substitution David Murphy joins the action as a substitute, replacing Craig Gardner.
100:08 Substitution Sebastian Larsson leaves the field to be replaced by Jean Beausejour.
98:58 Inswinging corner taken from the left by-line by Mark Noble, Roger Johnson makes a clearance.
98:27 The ball is swung over by Julien Faubert, Lee Bowyer gets a block in.
97:42 Mark Noble takes a shot. Save made by Ben Foster.
96:28 Julien Faubert delivers the ball, Liam Ridgewell makes a clearance.
96:21 The ball is sent over by Gary O'Neil, clearance made by Sebastian Larsson.
93:47 Assist on the goal came from Stephen Carr.
93:47 GOAL - Craig Gardner:Birmingham 3 - 1 West Ham Craig Gardner grabs a goal from outside the area to the bottom left corner of the goal. Birmingham 3 (4)-(3) 1 West Ham.
92:50 The ball is sent over by Gary O'Neil, Sebastian Larsson makes a clearance.
92:20 Unfair challenge on Kieron Dyer by Barry Ferguson results in a free kick. The free kick is swung in left-footed by Wayne Bridge,
Roger Johnson manages to make a clearance.
91:13 Craig Gardner takes a shot. James Tomkins gets a block in.
90:52 Kieron Dyer is flagged offside by the assistant referee. Free kick taken by Ben Foster.
90:11 Nikola Zigic handles the ball and concedes a free kick. Robert Green restarts play with the free kick.
Extra Time Started
90:00+3:17 The whistle goes for the end of normal time.
90:00+2:43 Craig Gardner produces a right-footed shot from just inside the penalty box and strikes the post.
90:00+1:55 Free kick awarded for an unfair challenge on Liam Ridgewell by Carlton Cole. Ben Foster takes the direct free kick.
89:17 Booking Barry Ferguson booked.
89:10 Booking Kieron Dyer receives a caution.
86:36 A cross is delivered by Scott Parker, save made by Ben Foster.
85:59 Corner taken right-footed by Mark Noble, clearance made by Roger Johnson.
83:28 Mark Noble takes a shot from just outside the penalty area which clears the crossbar.
82:48 Outswinging corner taken right-footed by Scott Parker, clearance made by Roger Johnson.
82:48 Substitution (West Ham) makes a substitution, with Gary O'Neil coming on for Luis Boa Morte.
81:44 Centre by Wayne Bridge, clearance by Lee Bowyer. Corner from the right by-line taken by Scott Parker, save by Ben Foster.
80:23 Cameron Jerome takes a shot. Robert Green makes a save.
78:19 Corner taken by Lee Bowyer from the left by-line played to the near post, clearance by James Tomkins. Corner from the right
by-line taken by Sebastian Larsson, Cameron Jerome takes a shot. Save made by Robert Green. Inswinging corner taken right-footed
by Lee Bowyer, Lee Bowyer provided the assist for the goal.
78:19 GOAL - Roger Johnson:Birmingham 2 - 1 West Ham Roger Johnson finds the net with a headed goal from close range. Birmingham 2 (3)-(3) 1 West Ham.
77:23 Booking Robert Green is shown a yellow card for unsporting behaviour.
74:16 The ball is crossed by Cameron Jerome, clearance by Scott Parker.
73:58 Carlton Cole takes a shot. Save by Ben Foster.
73:29 Carlton Cole challenges Liam Ridgewell unfairly and gives away a free kick. Direct free kick taken by Barry Ferguson.
71:58 Corner taken right-footed by Mark Noble from the left by-line, Nikola Zigic manages to make a clearance.
71:13 Craig Gardner is penalised for handball and concedes a free kick. Robert Green takes the direct free kick.
70:22 Substitution Kieron Dyer joins the action as a substitute, replacing Zavon Hines.
69:08 Liam Ridgewell crosses the ball, clearance by Matthew Upson. Corner from right by-line taken by Sebastian Larsson. Barry Ferguson
takes a shot. Robert Green makes a save. Corner taken by Sebastian Larsson, save by Robert Green.
68:15 Corner taken by Sebastian Larsson, save by Robert Green.
68:03 The ball is swung over by Sebastian Larsson, Julien Faubert manages to make a clearance.
66:23 Nikola Zigic is flagged offside by the assistant referee. Indirect free kick taken by Robert Green.
65:51 Stephen Carr crosses the ball, James Tomkins manages to make a clearance.
64:46 Wayne Bridge sends in a cross. The referee gives a free kick against Carlton Cole for handball. Direct free kick taken by
64:21 Carlton Cole sends in a cross.
63:47 Free kick awarded for a foul by Carlton Cole on Barry Ferguson. Direct free kick taken by Ben Foster.
62:27 The ball is delivered by Lee Bowyer.
62:06 The ball is sent over by Julien Faubert, Ben Foster makes a save.
60:03 Free kick awarded for a foul by Craig Gardner on James Tomkins. Direct free kick taken by Matthew Upson.
60:03 Booking The referee books Craig Gardner for unsporting behaviour.
58:37 Outswinging corner taken right-footed by Sebastian Larsson from the right by-line to the near post, Liam Ridgewell takes a
shot. Save by Robert Green. Outswinging corner taken right-footed by Sebastian Larsson from the right by-line,
58:37 GOAL - Lee Bowyer:Birmingham 1 - 1 West Ham Lee Bowyer finds the net with a goal from inside the penalty area to the top left corner of the goal. Birmingham 1 (2)-(3)
1 West Ham.
57:35 Liam Ridgewell delivers the ball, clearance by James Tomkins.
57:11 The ball is swung over by Sebastian Larsson, James Tomkins manages to make a clearance.
55:25 Effort on goal by Cameron Jerome from deep inside the penalty area misses to the right of the goal.
53:48 Free kick awarded for a foul by Scott Parker on Nikola Zigic. The ball is sent over by Lee Bowyer, Liam Ridgewell takes a
shot. Save by Robert Green.
52:09 Craig Gardner produces a shot from just outside the area that bounces off the post.
51:49 Sebastian Larsson sends in a cross, Matthew Upson makes a clearance.
51:42 The ball is crossed by Sebastian Larsson, Matthew Upson manages to make a clearance.
50:54 A cross is delivered by Liam Ridgewell, clearance by Matthew Upson.
49:37 Sebastian Larsson has an effort at goal from 25 yards. Save by Robert Green.
49:12 Free kick awarded for an unfair challenge on Sebastian Larsson by Carlton Cole. Free kick crossed by Barry Ferguson.
47:12 Effort from inside the area by Scott Parker misses to the right of the goal.
46:34 Corner taken by Scott Parker from the left by-line played to the near post, clearance made by Nikola Zigic.
45:01 The second half begins.
45:01 Substitution (Birmingham) makes a substitution, with Nikola Zigic coming on for Matt Derbyshire.
45:00+1:29 The ref blows to end the first period.
44:37 The ball is swung over by Stephen Carr.
42:21 Sebastian Larsson produces a cross.
39:30 Free kick awarded for an unfair challenge on Lee Bowyer by Julien Faubert. Free kick crossed right-footed by Sebastian Larsson,
James Tomkins manages to make a clearance. Corner taken by Sebastian Larsson, Robert Green makes a save.
36:15 Roger Johnson concedes a free kick for a foul on Zavon Hines. The ball is crossed by Mark Noble, Shot by Zavon Hines from
inside the penalty box bounces off the post.
34:55 Cameron Jerome delivers the ball, Matt Derbyshire has a headed effort at goal from deep inside the area missing to the right
of the target.
33:05 Free kick awarded for a foul by Mark Noble on Lee Bowyer. Strike comes in from Sebastian Larsson from the free kick, Robert
Green makes a comfortable save.
32:28 Matt Derbyshire takes a shot. Save by Robert Green.
30:56 Assist on the goal came from Wayne Bridge.
30:56 GOAL - Carlton Cole:Birmingham 0 - 1 West Ham A goal is scored by Carlton Cole from outside the box to the top right corner of the goal. Birmingham 0 (1)-(3) 1 West Ham.
29:41 The ball is crossed by Liam Ridgewell, save by Robert Green.
24:26 Unfair challenge on James Tomkins by Cameron Jerome results in a free kick. Free kick taken by James Tomkins.
23:51 The ball is delivered by Wayne Bridge, Barry Ferguson makes a clearance.
23:30 Centre by Julien Faubert, clearance by Martin Jiranek.
22:18 Inswinging corner taken by Scott Parker, clearance by Roger Johnson.
21:03 Luis Boa Morte takes a shot. Craig Gardner gets a block in.
20:09 Centre by Zavon Hines, clearance by Stephen Carr.
19:08 A cross is delivered by Carlton Cole, clearance made by Liam Ridgewell. Scott Parker takes a short corner.
16:23 Foul by Carlton Cole on Roger Johnson, free kick awarded. Barry Ferguson restarts play with the free kick.
15:51 Craig Gardner takes a shot from long distance which goes wide of the right-hand post.
15:10 Wayne Bridge sends in a cross.
12:34 Effort on goal by Carlton Cole from deep inside the area goes harmlessly over the bar.
9:55 Zavon Hines takes a shot. Save made by Ben Foster.
9:42 Stephen Carr sends in a cross, Wayne Bridge gets a block in.
7:36 The assistant referee signals for offside against Cameron Jerome. Indirect free kick taken by Robert Green.
6:09 Liam Ridgewell produces a cross, Lee Bowyer takes a shot. Blocked by James Tomkins.
4:38 Craig Gardner produces a cross, clearance made by Mark Noble.
3:46 Free kick awarded for a foul by James Tomkins on Cameron Jerome. Sebastian Larsson delivers the ball from the free kick right-footed
from left wing, save by Robert Green.
3:26 Zavon Hines has an effort at goal. Save by Ben Foster.
0:42 Handball by Zavon Hines. Direct free kick taken by Martin Jiranek.
0:00 The referee gets the match started.
Live text and data provided by The Press Association.
This page is best viewed in an up-to-date web browser with style sheets (CSS) enabled. While you will be able to view the content of this page in your current browser, you will not be able to get the full visual experience. Please consider upgrading your browser software or enabling style sheets (CSS) if you are able to do so.