Michigan State labored on offense throughout the first half, unable to get anything going on the ground, in the air, anywhere.
For a team that had lost five games by a combined 13 points during the regular season, it was starting to feel familiar.
The Spartans changed their luck by turning to brutally effective running back Le'Veon Bell in the second half, setting up Dan Conroy for another game-winning kick in a bowl game.
Bell ran for 145 yards and a fourth-quarter touchdown, Conroy kicked a 47-yard field goal with 1:01 left and Michigan State rallied to beat Texas Christian 17-16 in the Buffalo Wild Wings Bowl on Saturday night.
"With so many close games and losing like we did during the season, to have one go our way was definitely sweet," Conroy said.
It wasn't always pretty for the Spartans.
Michigan State (7-6) managed 76 yards of offense during the first two quarters as TCU bottled up Bell.
The 237-pound junior started to wear down the Horned Frogs in the second half, grinding out 107 of his yards on a 32-carry night.
Behind Bell, the Spartans went on the longest drive in their bowl history in the third quarter, marching 90 yards to set up freshman Connor Cook's 15-yard touchdown pass to Aaron Burbridge.
Michigan State then recovered a muffed punt by TCU's Skye Dawson at the 4-yard line midway through the fourth and Bell scored two plays later by racing around left end for a 14-13 lead.
TCU (7-6) still had a little life after blowing a 13-point halftime lead, moving just far enough to set up Jaden Oberkrom for the longest field goal in the bowl's history, a 53-yarder that put the Horned Frogs up 16-14 with 2:42 left.
They just left Michigan State too much time.
Starting at their own 25-yard line, the Spartans moved 45 yards in eight plays, setting up Conroy for his second game-winner in a bowl after beating Georgia with a 28-yarder in the third overtime of the 2012 Outback Bowl.
Michigan State's defense held after that, sending the Spartans to their second straight bowl win after three consecutive losses.
"There was no doubt in my mind that after so many losses in similar fashion that we were going to come out on top in this one," Spartans linebacker Max Bullough said.
The Horned Frogs shut down Michigan State's offense in the first half and did just enough when they had the ball to put together three scoring drives.
In the second half, TCU couldn't get anything going against the Spartans' defense — 84 total yards — and its defense gave up the long scoring drive in the third quarter, along with the game-winner in the fourth.
Trevone Boykin threw for 201 yards and an interception on 13-of-29 passing for the Horned Frogs.
"A little bit empty feeling inside because we felt like we left a lot on the field," TCU coach Gary Patterson said.
TCU and Michigan State came to the desert with an awful lot of similarities.
The Horned Frogs opened their first season in the Big 12 with four straight wins before losing four of their final six games. Michigan State started 4-2, then lost four of six down the stretch.
Michigan State had the nation's fourth-best defense and was 10th in scoring defense during the regular season. TCU was 18th in total defense and 10th against the run.
Michigan State quarterback Andrew Maxwell was up-and-down in his first season as Kirk Cousins' replacement, throwing 13 touchdown passes and nine interceptions. Boykin took over after four games for Casey Pachall, who was suspended and later left the team, and threw for 15 touchdowns and nine interceptions.
The biggest difference between the teams was Bell.
He ranked third nationally with 137.3 yards rushing per game and had 1,648 on the season, second-most in Michigan State history and 242 fewer than TCU had as a team.
Early on, the Horned Frogs gave him nowhere to go.
Filling holes inside and stringing plays out toward the sidelines, TCU stuffed the bruising Bell on nearly every touch, holding him to 38 yards on 11 carries in the first half.
Of course, it didn't seem to matter what Michigan State did. The Spartans had 29 yards on 12 plays in the first quarter and weren't a whole lot better in the second, with Maxwell throwing two near-interceptions on consecutive passes and an ill-advised trick play that probably should have resulted in a turnover, too.
The Spartans still seemed to be stuck in the ruts in the third quarter before grinding out a 14-play scoring drive led by Cook, who replaced Maxwell for the second time in the game. They had their biggest play on a floating pass from Bell to fullback TyQuan Hammock (29 yards), then Cook threw his first career touchdown pass, a 15-yarder to Burbridge on a crossing route that cut TCU's lead to 13-7.
"I thought Connor did a good job on the 90-yard drive, gave us a little momentum," Spartans coach Mark Dantonio said.
TCU didn't exactly have its way with Michigan State's defense in the first half and missed some chances to build a bigger lead.
The Frogs started gashing the Spartans for decent-sized chunks with their option midway through the first quarter, setting up Matthew Tucker's 4-yard touchdown on an end-around.
Boykin had an impressive off-the-back-foot throw to freshman Kolby Listenbee for 59 yards on the last play of the first quarter and nearly had a 19-yard touchdown pass to open the second, but LaDarius Brown was bumped and dropped the ball in the end zone. Oberkrom followed with a 47-yard field goal and added another from 31 yards after Boykin hit Josh Boyce on a 61-yard pass to put TCU up 13-0 at halftime.
The Frogs couldn't keep it up in the second half.
With Michigan State clogging the running lanes and chasing Boykin around, TCU had 30 yards of offense in the third quarter and continued to struggle in the fourth. The Horned Frogs did manage the short scoring drive to set up Oberkrom's late field goal, but ended up going backward on their final drive after Conroy's kick.
"What I thought happened in the third quarter was Michigan State dialed up the heat and we didn't have an answer," Patterson said.
Michigan State did — for one of the few times this season.