EVANSTON, Ill. -- Stefan Demos kicked a 19-yard field goal with 21 seconds left Saturday and Northwestern completed a comeback from a 25-point deficit to beat Indiana 29-28.
The Wildcats (5-3, 2-2) trailed 28-3 in the second quarter after Indiana used a 70-yard TD run from Darius Willis on the game's first scrimmage play and a 93-yard kickoff return from Ray Fisher to build the big lead.
But Mike Kafka shook off three second-half interceptions and helped the Wildcats stage their comeback.
Kafka hit Andrew Brewer on a 51-yard TD pass early in the fourth quarter to cap a 98-yard drive that started after Indiana failed to score on a fourth-and-goal from Northwestern's 1. That got Northwestern within 28-26.
The Hoosiers gambled again on fourth-and-3 in the fourth quarter from the Northwestern 33, but a pass from Ben Chappell was tipped away.
After some tough running by Scott Concannon, Kafka hit Brewer on a key fourth-down pass of 6 yards to the Hoosiers' 29. Jeravin Matthews broke off a 15-yard run to the Indiana 10 as the Wildcats got Demos in position.
Indiana (4-4, 1-3) tried a last-play field goal but Nick Freeland's 59-yard attempt fell short.
Willis, who had an 85-yard TD run against Michigan earlier this season, broke around the right side, got into the clear and sprinted down the sidelines to give the Hoosiers the lead 20 seconds into the game.
Fisher, who also had a nifty punt return to set up a score, weaved his way through early would-be tacklers and took off down the left sideline to put the Hoosiers up 28-3 midway through the second quarter.
Chappell, who threw for 333 yards last week in a victory over Illinois, completed 8 of his first 9 passes. He finished 15 of 26 for 159 yards. Kafka was 26 of 46 for 312 yards.
Willis had a 3-yard run early in the second quarter to cap a 76-yard drive that featured a 22-yard keeper by Chappell and his 19-yard pass to Damarlo Belcher. That made it 21-0.
With his team trailing 28-3, Kafka directed a pair of long scoring drives in the final 4:07 of the half to get Northwestern back in the game. He sneaked in from the 1 to end a 75-yard march that featured a pass interference call on the Hoosiers.
Kafka lofted an 8-yard TD pass to Zeke Markshausen with seven seconds to go in the half, a play upheld by video review, completing an 84-yard drive.
Late in the third, Northwestern's Ricky Weina blocked a punt by Indiana's Chrids Hagerup and the ball bounded to the end zone. But Indiana's Terrance Thomas was able to recover, giving Northwestern a safety instead of a touchdown, making it 28-19.
After Austin Thomas intercepted Kafka and returned 38 yards to the Wildcats 23, the Hoosiers appeared on the verge of putting it away. Indiana went for it on a fourth-and-goal from the 1, but a scrambling Evans tripped over his own blocker and went down at the 2.
SEC Nation's Greg McElroy and Marcus Spears make their picks on which names to watch on the defensive side of the ball in the SEC.
SEC Nation joins Auburn head coach Gus Malzahn to discuss the upcoming schedule and what the Tigers' offense may look like this season.
Paul Finebaum explains why LSU coach Ed Orgeron may be feeling the hot seat this season.
Wide receiver Demetris Robertson, whose sophomore season at Cal was cut short due to surgery, is transferring to Georgia, he announced Saturday.
Trevor Matich chats and breaks down film with the Badgers offensive line while fishing.
Bill Beekman, who has served as Michigan State's interim athletic director since February -- shortly after Mark Hollis retired -- will be named a permanent replacement Monday, a source told ESPN.