NORMAN, Okla. -- Kyle Kempt passed for 343 yards and three touchdowns, including a 25-yarder to Allen Lazard that put Iowa State ahead with 2:19 left in the fourth quarter, and Joel Lanning made plays on offense and defense to lead the Cyclones to a stunning 38-31 upset of No. 3? Oklahoma?on Saturday.
The loss snapped Oklahoma's nation-leading 14-game win streak and the Sooners' 18-game winning streak against the Cyclones that dated to 1990. It was just Iowa State's second victory against Oklahoma since 1961, and the Cyclones (3-2, 1-1 Big 12) did it without their starting quarterback.
"There's been a lot of adversity at Iowa State for a long time and there's been a cloud around us," Cyclones coach Matt Campbell said. "I think our kids said, 'I'm sick of it, and we're going to keep grinding, keep swinging and getting better one day at a time.' So at the end of it, here we are."
Kempt, a senior, had thrown just two passes in his career before Saturday's contest. He played because regular starter Jacob Park went on leave for undisclosed personal medical reasons late this week.
The Cyclones remained confident, despite having lost 20 straight against ranked opponents. Iowa State's last win over a Top 25 team came against TCU in 2012. It was Iowa State's first road win over a Top 5 team.
"We came in telling our whole team you have to believe for four quarters," Lanning said. "Believe you can beat a Top 5 team in the country. That's what we did today."
According to ESPN Stats & Information, AP top-3 teams had been 207-0 since 2004 in games in which they led by at least 14 points at home. Entering the game, the Sooners had been 89-5 at home against unranked opponents since 1997 -- the best record among FBS teams during that stretch.
Lanning, who switched from quarterback to linebacker in the offseason, played both positions Saturday. According to the Des Moines Register, he's the first Iowa State player since 1971 to get significant action both ways in a game. He ran for 35 yards, passed for 25 and had eight tackles, a sack and a fumble recovery. He played 78 snaps.
"It was fun," Lanning said. "Coming into an atmosphere like this, you can't ask for anything better -- especially playing both ways. It was fun. I can't say enough about my teammates and what they did to help me out. It was a lot of stuff going on for me. I didn't have my best game defensively, but we got the win."
Iowa State got it going after a rough start and finished with 449 yards.
"We should have been better than that today," Oklahoma defensive coordinator Mike Stoops said. "Some of the old scars kind of repeated themselves today. Our execution as a whole was not good enough. That falls on us as coaches. We haven't played well the last couple of well. We are just not making enough plays, and if you do that in this league you're going to come out on the short end of the stick."
It was the first loss for new Oklahoma coach Lincoln Riley. Baker Mayfield passed for 306 yards and rushed for 57 the Sooners (4-1, 1-1), but his Heisman hopes and Oklahoma's College Football Playoff took major hits.
"I think it's a sense of complacency," Mayfield said. "We've been talking about it. It's not like it's not been apparent. We've let teams come back in games and give them hope. When you do that to a team that has their backs against the wall -- we know exactly how it's feels -- it's something that you can't do."
The Sooners were consensus 31-point favorites among Las Vegas sportsbooks. It is the seventh straight season that Oklahoma has lost a game outright as a double-digit favorite, and it was the Sooners' biggest upset loss in the last 40 seasons, according to ESPN Stats & Information.
The last time Iowa State overcame a 14-point hole was against Nov. 30, 2013, when the Cyclones overcame a 24-point deficit to beat West Virginia.
Iowa State: The Cyclones, heavy underdogs, didn't need tricks or a slew of takeaways to beat the Sooners. Iowa State got back in the game with 21 straight points to take the lead after falling behind 24-10.
Oklahoma: It was the second straight game that the Sooners didn't dominate as expected. Though Oklahoma's offense purred as usual, the defense struggled against a team that scored just seven points against Texas with Park. Oklahoma also struggled in a 49-41 win over Baylor two weeks ago. The defense that looked dominant in nonconference play has been leaky during Big 12 action.
"It's just how it's going right now," Stoops said. "We're not executing well enough. Whether we have too much in or not enough in for players to be able to do their jobs well and do it confidently -- we certainly have to look at that as well."
The Sooners could drop out of the top 10. Iowa State is improved but a few victories away from being ranked, but the Cyclones did get a plant a flag -- like Mayfield at Ohio State -- at midfield of Gaylord Family-Oklahoma Memorial Stadium.
Oklahoma running back Abdul Adams left the game in the first quarter with a right leg injury and did not return to action. The Sooners' leading rusher heading into the day stood on the sideline in the second half with a brace that covered his right foot and calf. Riley did not have an update after the game.
Iowa State: Hosts Kansas on Saturday.
Oklahoma: Plays Texas in Dallas on Saturday. The Sooners often have struggled with the Longhorns, regardless of the teams' records.
The Associated Press contributed to this report.