OMAHA, Neb. -- South Carolina's Brady Thomas was 0 for 5 with two strikeouts and a bad bunt attempt in his previous at-bat when he came up in the 12th inning with two outs and the Gamecocks tied with Oklahoma.
"I knew the pressure was going to be on them," he said.
The confident Thomas swung at closer Ryan Duke's first pitch, drilling it into center field to score Jackie Bradley from second and give the Gamecocks a 3-2 victory in a College World Series elimination game Thursday night.
The Gamecocks (50-16) were down to their last strike when Bradley's full-count base hit past first baseman Cameron Seitzer brought in Robert Beary from second to tie it. Bradley also was 0 for 5 before he delivered his big hit.
"You keep battling and you hope it falls your way," Gamecocks coach Ray Tanner said. "It's a game of percentages. It's not going to happen for you all the time, but you have to believe it's going to work out sometimes. We lost a close one to them and kept thinking that maybe we could get one tonight."
South Carolina lost its CWS opener 4-3 to the Sooners, then knocked out No. 1 seed Arizona State on Tuesday before winning again Thursday. Now the Gamecocks (50-16) will play in-state rival Clemson in the Bracket 2 final Friday night. They have to beat Clemson twice to reach the best-of-three championship round.
"Right now Clemson is in the catbird seat," Tanner said. "They've done their job to get where they are. I know they're excited to be where they are, and we're excited to still be playing."
It looked as if South Carolina might be on its way home after Oklahoma's Tyler Ogle homered off freshman Ethan Carter leading off the 12th.
"When Ogle hit that home run, I went up and down the dugout to these guys and said, 'Hey, let's hold right here. We've got a shot in the bottom half. We're the home team. We've got to score anyway,'" Tanner said.
Ogle's blast, which barely cleared the wall in right center, came after the Sooners (50-18) were held scoreless for nine straight innings.
Carter came on in the 12th after Matt Price struck out five in three scoreless innings. Ogle sent out Carter's second pitch, just beyond the reach of Bradley in center field.
Beary was down 0-2 in the count against Duke when he singled to left to start the South Carolina 12th. Beary stole second before Bradley came up with two out.
Bradley, batting a team-leading .380 with 13 homers, including two in Omaha, was 5 for 8 (.625) in the Gamecocks' first two CWS games. Though hitless in five at-bats, Bradley was surprised Oklahoma decided to pitch to him.
"At first I was thinking that with nobody on first base they might try to pitch around me a little bit," Bradley said. "Once he started coming at me, I got ready again. I happened to get behind in the count and battled. I was able to get a pitch down the middle on 3-2."
OU coach Sunny Golloway said Duke pitched to Bradley exactly as planned, going away until there were two strikes and then coming back inside.
"You can't fault the pitcher. You gotta give the hitter credit," Golloway said. "He did his job, and he did it in a pressure situation."
After his hard shot past Seitzer rolled into right field, Bradley raised his right arm and pumped his fist and then pounded his chest three times after rounding the base.
Thomas drilled Duke's first offering into center field, where Chris Ellison bobbled the ball and never had a chance to get Bradley at home. Ellison didn't even try.
Tyler Webb (3-2), the Gamecocks' sixth pitcher, got the win after relieving Carter. Duke (3-2) took the loss.
Caleb Bushyhead's RBI single in the second put OU up 1-0, and Sooners starter Zach Neal pitched seven shutout innings before South Carolina broke through to tie it in the eighth.
South Carolina starter Blake Cooper was almost as impressive as Neal, allowing a run on four hits in 5 2/3 innings. He walked two and struck out six.
Neal retired 14 in a row after Evan Marzilli singled leading off the bottom of the first. He allowed a run on five hits and a walk, and he struck out seven.
The Gamecocks threatened three times before breaking through in the eighth, coming up empty with the bases loaded in the fifth.
Marzilli doubled off the wall in left center to lead off the eighth, chasing Neal and bringing on Jeremy Erben. Marzilli moved over on a bunt before Walker chopped a grounder between third base and short for the tying run.
"Heck of a ride," Erben said. "I can't imagine my senior year being any better than this one, getting here. Last year at Rosenblatt. Unreal experience. It's a long season but one I'll remember for the rest of my life."