GLENDALE, Ariz. (AP) - Arizona kicker Jay Feely made a tying 61-yard field goal and, just as improbably, missed a 38-yarder that would have given the cardiac Cardinals another pull-it-from-the-ashes victory.
Had the Cardinals not had so many mistakes before that emotionally-draining sequence, it would never have come down to those two kicks.
Arizona lost a chance to win in regulation when Feely's 38-yard attempt was tipped, then the game when Buffalo's Rian Lindell made a 25-yarder in overtime that gave the Bills a 19-16 win over the Cardinals on Sunday.
The final dramatic swings came from the legs of the two kickers. The loss, from the Cardinals' perspective, came from all those dropped passes, missed assignments and mental mistakes leading up to another climactic finish at University of Phoenix Stadium.
"We have to make some plays earlier in the game so we're not living on the edge," Cardinals coach Ken Whisenhunt said. "We have been good about being able to finish out those ... and we have won a heck of a lot more than we haven't, but the stress of it is pretty tough for everybody."
Arizona (4-2) had developed a knack for pulling out victories, particularly at home, by making the big plays at the end.
The Cardinals entered the game with an eight-game home winning streak, second-longest in team history, and had won seven straight home overtime games, the longest streak in NFL history.
Arizona didn't seem like it would get another shot against the Bills (3-3), unable to protect quarterback Kevin Kolb - again - or get much of anything going downfield.
Despite all the early mistakes and a rib injury that knocked Kolb out in the fourth quarter, the Cardinals fought their way back.
John Skelton, active for the first time since spraining his right ankle in the opener against Seattle, took over for Kolb in the closing minutes after he was sacked and gingerly walked off the field. After Feely's franchise-record 61-yard kick with 1:09 left, Skelton hit Larry Fitzgerald on a 28-yard pass to set up the potential winning kick at the end of regulation.
Arizona's chance to win it in regulation fluttered away when Feely's 38-yard attempt hit the left upright after Buffalo's Alex Carrington got a hand on the ball.
Playing in their sixth overtime in nine home games, the Cardinals forced the Bills to punt on the first possession of overtime, seemingly setting them up for another how'd-they-do-that win.
Instead, Jairus Byrd cheated in on an inside route to Rob Housler and intercepted Skelton's pass, returning it 29 yards to Arizona's 6-yard line. Lindell split the uprights two plays later to give the Bills a sigh-of-relief win.
"You go from on top of the world to feeling about as low as you can feel when you have an opportunity to come through and you don't, regardless of how it happened," said Feely, whose previous career best was a 55-yard field goal.
The Bills limped into the game, beaten up physically and mentally after giving up 1,201 yards and 97 points their previous two games.
They got off to a miserable start, too, when Fred Jackson fumbled on the first play from scrimmage and Arizona recovered at Buffalo's 33-yard line.
The Bills held Arizona to a field goal and didn't back down in a defensive struggle, getting a pair of interceptions from Byrd and five sacks, including one on Kolb for a safety in the first quarter.
Pretty? Certainly not. But it was a win, one the Bills desperately needed before the season spiraled away from them.
"It wasn't pretty at times, but it was a gut check and that might go a long way for our football team," Bills coach Chan Gailey said. Bills quarterback Ryan Fitzpatrick added "Getting knocked down like that at the end of that game a couple of different times and coming back. And making the plays we did to win that game I think it says a lot about our toughness."
Buffalo was coming off a 45-3 loss to San Francisco after giving up a franchise-record 621 yards.
Instead of heading home from the Bay Area, the Bills opted to stay the week at an Arizona resort in hopes of healing and regrouping.
The time together in the desert seemed to do them some good.
Ryan Fitzpatrick, who grew up in nearby Gilbert as a Cardinals fan, was unspectacular, but steady, completing 18 of 32 passes for 153 yards.
Buffalo did most of its damage on the ground, with C.J. Spiller getting 88 yards on 12 carries, including a 10-yard touchdown run, and Jackson adding 53 yards, with a 1-yard scoring run.
The defense harassed Kolb all day before knocking him out on a sack with just over 2 minutes left in regulation. Kolb threw for 128 yards on 14-of-26 passing, with an interception and a 9-yard scoring pass to Fitzgerald in the second quarter.
The Bills were just as good against Skelton, holding him to 45 yards on 2 of 10 passing with the one big interception by Byrd in overtime.
"We were away from the distractions and it was just us here in Arizona," Byrd said. "It was a chance for us to soul search, get corrected what we needed to get corrected without the distractions of being at home. it was great for us mentally for us to be able to regroup." Mario Williams added "Just look at it as an us against the world mentality we needed it big time."
Click Here to view a photo gallery of the Buffalo Bills' victory over the Arizona Cardinals.
Notes: Fitzgerald joined Randy Moss as the only players under 30 to reach 10,000 yards receiving. ... Mario Williams had two sacks for the Bills after getting 1.5 the first five games.... Buffalo safety Da'Norris Searcy left with an ankle injury early in the third quarter. ... Cardinals S Kerry Rhodes was carried off the field with a back injury with 5:41 to play in regulation.