BALTIMORE -- You can criticize Charlie Batch's lack of arm strength. You can laugh about Batch's age (he's so old that he once handed off to Barry Sanders). The one part of Batch's game you can't question is his heart.

How else do you explain a third-string quarterback beating the Baltimore Ravens at home after Tom Brady, Drew Brees and Matt Schaub recently failed to do so?

In what might be his final NFL game, Batch played like it was his final NFL game. He defined his team's gritty performance, doing everything possible to help the Pittsburgh Steelers to a much-needed 23-20 come-from behind victory over the Ravens and end Baltimore's 15-game home win streak. As soon as the game ended, Batch celebrated the emotional win by hugging Ben Roethlisberger.

If there was a lesson to be learned, it's don't ever write off these old Steelers, especially the oldest one on the roster. Batch led Pittsburgh on the winning drive, remaining perfect (5-for-5 for 45 yards) despite taking a couple of hard shots, including a forearm to the head. He also led the way for Jonathan Dwyer's 16-yard touchdown run, delivering the block on cornerback Cary Williams. The only thing Batch didn't do in the second half was kick the winning field goal.

The 37-year-old quarterback is the reason why the Steelers (7-5) remain in the thick of the AFC playoff race. He's also the reason why the Ravens (9-3) failed to clinch a playoff berth.

"We were able to do something nobody thought we were able to do, outside of our locker room," Batch said.

This was a game that the Steelers had no right winning on paper. Linebacker LaMarr Woodley was the latest starter to get scratched before a game. Three offensive linemen were shuffled around, pushing seventh-round rookie right tackle Kelvin Beachum into the starting lineup for the first time. And Ike Taylor, the Steelers' best cornerback, left the game with a right-ankle injury after the first series and didn't return.

But the biggest reason why no one thought the Steelers would win was Batch, and for good reason. Pittsburgh was 0-6 since 2004 against Baltimore when Ben Roethlisberger didn't start.

Batch isn't close to being Roethlisberger, and no one expects him to be. Still, for one quarter, Batch played like Big Ben. He was 10-for-11 for 105 yards and one touchdown in the fourth quarter. In comparison, Ravens quarterback Joe Flacco was 2-of-6 for 18 yards in the final quarter. The Steelers beat the Ravens for the first time since 2010 because they had the better quarterback in the clutch.

"Charlie came in and played the game that we needed him to play today to win," linebacker James Harrison said. "It's not surprising to us. It may be to you, but not to us."

Harrison must not have been watching last Sunday, when Batch threw two interceptions in a six-point loss in Cleveland. This time, with the game tied at 20, Batch was more mentally and physically tough. Batch converted a third-and-7 play on the final drive by completing a 15-yard pass to Mike Wallace just before Baltimore's Haloti Ngata shoved him to the ground. After crossing midfield, Batch connected on a 10-yard pass to Wallace before the Ravens' Paul Kruger gave him a forearm to the head.

"As soon as I let it go, I got hit," Batch said of his final pass that put the Steelers in field-goal range. "I was like 'wow.' If I held onto it any longer, I don't think I would have been able to complete that pass."

Batch added, "I'll let you know tomorrow what it feels like."

What makes Batch's fourth-quarter comeback more improbable is how he played early. He skipped passes to open receivers. He overthrew a wide-open Wallace in the end zone in the final minute of the first half (although he hit the guy holding the microphone perfectly 5 yards behind the end zone).

The game started to change for Batch on the first possession of the third quarter, when he hustled downfield for a block that helped Dwyer reach the end zone and tie the game at 13. That was the first red-zone touchdown allowed by the Ravens in five games, dating back to Oct. 21.

"It shows you what kind of heart he has," Dwyer said. "I know I wouldn't have scored without that block and I appreciate it."

After the Ravens went back ahead on a Ray Rice touchdown, Batch tied the game with his first touchdown pass since Week 3 in 2010. Batch's 276 yards passing are his most in a game since 2001, according to ESPN Stats & Information.

If the Steelers had lost, they would've fallen a game behind the Cincinnati Bengals for the final playoff spot in the AFC and would've been eliminated from the AFC North race. Pittsburgh is two games back of the first-place Ravens with four games remaining.

The Ravens hurt their chances of getting the No. 2 seed and a first-round bye. They are currently the third seed behind the Patriots. (The three-way tie between Baltimore, New England and Denver is broken by conference record.)

You know the Ravens have to be scratching their heads in losing to Batch. "It's not surprising at all," Ravens safety Ed Reed said before acknowledging, "maybe a little bit."

There's a chance that Roethlisberger could return for next Sunday's game against the San Diego Chargers and Batch will go back to the bench. This may be the final appearance of Batch's 15-year career.

Does a game like this affect Batch's decision on whether to come back next season? "As long as I can play, I'm going to come back."

It likely won't be Batch's decision. The Steelers probably won't bring back Batch next year. If that happens, Batch's final bow will be a memorable one.