The Northern Ireland keeper produced a superb point-blank save from Neil Collins to keep the scores level.
However, a nearby fire was the biggest talking point of the opening half an hour, with visibility increasingly difficult as smoke bellowed over St Andrew's.
But as fire crews battled with the blaze Keogh made it 1-0 to Wolves, converting Kightly's pass to open the scoring.
Just before the break, Birmingham looked to have won a penalty when Bent was felled by Richard Stearman, but referee Howard Webb ruled out a spot kick.
Seconds later Wolves should have increased the lead but first Vokes and then Kightly had their efforts cleared off the line.
The visitors started the second half well and Taylor saved well at the feet of Keogh.
Wolves' second was scored in controversial fashion, as Birmingham attacked a Radhi Jaidi's pass hit referee Webb and sparked a counter-attack through Keogh.
The ball eventually found its way to Kightly who crossed to Vokes who found the net for 2-0.
Cameron Jerome twice came close to pulling one back for Birmingham but first he saw an effort hit the bar and then a back heel cleared off the line by Keogh.
Debutant Robin Shroot, who signed earlier this month after being released by Ryman League Premier Division side Harrow Borough, also came close but Wolves keeper Wayne Hennessy saved well.
Birmingham manager Alex McLeish: "It was one of those nights where nothing went for us.
"TV pictures were pretty conclusive that it should have been a penalty and big decisions change games.
"We felt it was a very bad challenge on Marcus in the box.
"We have to look forward and show nerves and leadership and that's what you'll be seeing at this club."
Wolves manager Mick McCarthy:
"I'm very pleased with the performance, I thought we played well and deserved to win.
"I thought it was a penalty and, likewise I thought ours was a penalty on Saturday, but we didn't get it.
"You get some, you don't get some. I haven't seen it again but my viewing of it was that it was a penalty
"And we were fortunate because with Richard Stearman getting booked again he would have got sent off."
Birmingham: Maik Taylor, Parnaby, Jaidi, Ridgewell, Queudrue, Agustien (Kelly 82), Carsley, Quashie, Shroot, Jerome, Bent (Johnson 46). Subs Not Used: Doyle, Martin Taylor, Sammons, Mitchell McPike.
Bookmark with:
What are these?