Adam Matthews scored in the bottom of the 13th inning after Virginia reliever Cody Winiarski botched two throws after fielding bunts, sending defending national champion South Carolina back to the College World Series finals with a 3-2 victory Friday night in Omaha.
South Carolina closer Matt Price worked out of bases-loaded situations in the 10th, 12th and 13th innings.
The Gamecocks (53-14) will play Florida (53-17) in an all-Southeastern Conference best-of-three final beginning Monday.
Virginia (56-12) was the No. 1 national seed.
Premium content for only $0.99
For the most comprehensive local coverage, subscribe today.
Brady Thomas singled leading off the 13th against Winiarski. Matthews came in to run and advanced when Winiarski pivoted and threw wildly trying to get him at second on Peter Mooney's bunt. Robert Beary followed with another bunt. Winiarski tried to get Matthews at third, but the low throw away from the third baseman, allowing the winning run to score.
Winiarski (6-4) relieved Virginia closer Branden Kline starting the bottom of the 13th. Kline threw 107 pitches in five innings of three-hit relief.
The Gamecocks recorded their sixth walkoff victory of the season, and second of the College World Series, after Kline and Price engaged in a long battle of closers.
Price (7-3) allowed seven hits, walking five and striking out five. Before Friday, Price's longest outing of the season was three innings.
Price walked David Coleman to start the top of the 13th. Colin Harrington reached on an infield single, and the bases were loaded with no outs when nobody covered first base as Christian Walker fielded Keith Werman's bunt.
Price struck out Chris Taylor and then caught a huge break when John Barr lined out to second, with Scott Wingo flipping to shortstop Mooney covering the bag to double up Harrington.
Price walked Jared King to load the bases with two outs in the 10th, then struck out pinch-hitter Reed Gragnani. He allowed consecutive singles leading off the 12th, and after an intentional walk loaded the bases with one out, he got Shane Halley to ground into a double play.
Kline allowed South Carolina's first two batters to reach base in the bottom of the 12th before retiring the next three, with right fielder Coleman making a sliding catch of Adrian Morales' foul ball for the third out.
Virginia tied it 2-2 in he eighth. Taylor scored the tying run from second base when John Hicks' ground ball skittered through Mooney's legs for the Gamecocks' second error of the inning.
Virginia starter Danny Hultzen was dominant in the three innings he pitched, striking out the first six batters he faced and eight in all. Coach Brian O'Connor said Hultzen, the No. 2 overall draft pick, didn't come out for the fourth inning because he was feeling "under the weather."
Florida 6, Vanderbilt 4 — Second-seeded Florida advanced to the finals as Preston Tucker drove in the go-ahead run in the eighth inning to offset a shaky bullpen that squandered a three-run lead.
Alex Panteliodis limited Vanderbilt to three hits in six innings before a parade of five relievers blew his 4-1 lead.
Austin Maddox pitched the last 1 2/3 innings for the win, which was Florida's fifth in six meetings this season against its SEC Eastern Division rival.