Lee Westwood beat Masters champion Jordan Spieth and Rory McIlroy produced some late heroics to reach the last 16 of the WGC Match Play.
Westwood recovered from losing the first two holes to beat Spieth and faces Danny Willett in the last 16.
McIlroy came from two down after 16 to dramatically beat Horschel on the second hole of a play-off and faces Hideki Matsuyama next.
In-form Justin Rose exited the event, despite defeating American Ryan Palmer.
Rose's first-day conqueror Marc Leishman beat India's Anirban Lahiri on the 18th to advance to the last 16 with a perfect 3-0 winning record.
The world's top 16 were the leading seeds in 16 groups of four players and only the winners of each group at the San Francisco tournament progressed to the knockout stage, which starts on Saturday.
Westwood said he felt like he was "sliding down the bannister" as he fell behind to Spieth early on.
"There are no easy matches and I knew Jordan was going to be tough to beat," said the Englishman, who, at 42, is twice the age of the American.
World number one McIlory holed from 25 feet on the 17th to keep his match with Horschel alive and birdied the 18th too. He won at the 20th hole after Horschel was unable to get up and down from off the green.
"I'm very proud of how I came back," said McIlroy, 25. "It wasn't one of my best performances but I did what I needed to do."
Meanwhile Spaniard Miguel Angel Jimenez was involved in an on-course confrontation with Keegan Bradley during their dead-rubber match.
The pair squared up to each other after a disputed drop, when Jimenez told Bradley's caddie Steve Hale to "shut up".
Bradley intervened and went nose-to-nose with the Spaniard. Hale refused to shake Jimenez's hand afterwards, though the Spaniard and Bradley did.
Paul Casey recovered from four down with nine to play to beat Francesco Molinari and set up a meeting with former Masters champion Charl Schwartzel, while England's Tommy Fleetwood beat Bernd Wiesberger and next faces South African Branden Grace.
Round of 16 (group record/time of match on Saturday):
Rory McIlroy (3-0) v Hideki Matsuyama (3-0), 11:14 local time, 19:14 BST.
Paul Casey (3-0) v Charl Schwartzel (3-0), 11:02, 19:02 BST.
Lee Westwood (3-0) v Danny Willett (3-0), 10:26, 18:26 BST.
Tommy Fleetwood (2-1) v Branden Grace (2-1), 10:14, 18:14 BST.
Jim Furyk (2-1) v J.B. Holmes (2-1), 10:38, 18:38 BST.
Rickie Fowler (3-0) v Louis Oosthuizen (3-0), 10:50, 18:50 BST.
Marc Leishman (3-0) v Gary Woodland (3-0), 9:50, 17:50 BST.
John Senden (3-0) v Hunter Mahan (3-0), 10:02, 18:02 BST.