Byrd picked off a pass from John Skelton, who had replaced the injured Kevin Kolb, and returned it 29 yards to the Arizona 6 to set up the winning kick.
Arizona's Jay Feely made a franchise-record 61-yard field goal with 1:09 left in regulation to tie it 16-16. But his 38-yard attempt to win it as the fourth quarter was tipped by Buffalo's Alex Carrington and careened off the left upright.
The Cardinals (4-2) lost their second in a row after a 4-0 start. The Bills (3-3) won after allowing 1,201 yards and 97 points in their previous two games.
The Cardinals went into overtime for the sixth time in their last nine home games and had won all of them until Sunday.
It looked like another stunning Arizona comeback when Feely, whose previous long was 55, nailed the 61-yarder, the third 60-yard plus kick in the league this season an NFL record.
The big kick came moments after Kolb, whose scrambles had been the biggest plays for Arizona's as-usual sputtering offense, was hit for his fifth sack and left with a rib and chest injury.
Enter Skelton, active for the first time since he sprained his left ankle in the season opener, clearing the way for Kolb to reclaim the starting job.
Skelton's fourth-down pass to Larry Fitzgerald got Arizona close enough to try the record kick, which cleared the crossbar with room to spare.
The Bills then punted, and in an attempt to keep the ball away from Arizona returner Patrick Peterson, Shawn Powell's 30-yard kick went out of bounds at the Cardinals 47. Skelton's 28-yard pass to Fitzgerald set up the 38-yard try. But Feely, who earlier made two from 49, was thwarted by Carrington's tip.
The Bills took the overtime kickoff, advancing to the Arizona 35 with the help of a pass interference penalty against Sam Acho. But Buffalo chose to punt. The ball nearly was downed at the 1-yard line, but was ruled a touchback, setting up the ball at the 20.
From there, Skelton's pass into traffic was intercepted by Byrd. Two plays later, Lindell had just his third field goal of the season and the Bills had gained some redemption following to miserable weeks.
Ryan Fitzpatrick, who grew up in nearby Gilbert as a Cardinals fan, completed 18 of 32 for 153 yards, but the Bills did most of their damage on the ground. C.J. Spiller carried 12 times for 88 yards, including a 10-yard touchdown run. Fred Jackson gained 53 yards in 16 attempts, with a 1-yard scoring run.
Kolb was 14 of 26 128 yards with one touchdown and one interception. He scrambled five times for 66 yards. Arizona's sputtering ground game, without Ryan Williams after he was knocked out for the season with a shoulder injury, got a surprising day from William Powell, who gained 70 yards on 13 carries.
Fitzgerald caught six passes for 93 yards, including a 9-yarder for a touchdown. Skelton, who beat out Kolb for the starting job in the preseason, was just 2 of 10 for 45 yards.
The Bills gave Arizona a quick opportunity when linebacker Daryl Washington stripped the ball from Fred Jackson on the first play from scrimmage and William Gay recovered. That set up Feely's 49-yard field goal.
The score went to an odd 3-2 when Kolb's offensive line collapsed again and he was sacked in the end zone for a safety. The Bills went 49 yards in 10 plays, converting three third downs, to go up 9-3 on Spiller's touchdown.
Arizona finally got going in the second quarter, and Kolb threw over the middle to Fitzgerald for a 9-yard touchdown that put the Cardinals ahead 10-9.
Online: http://pro32.ap.org/poll and http://twitter.com/APNFL
Buffalo 9 0 7 0 3 19
Arizona 3 7 3 3 0 16
Ari • FG Feely 49, 13:50.
Buf • Kelsay safety, 8:36.
Buf • Spiller 10 run (Lindell kick), 3:35.
Ari • Fitzgerald 9 pass from Kolb (Feely kick), 4:47.
Ari • FG Feely 49, 3:12.
Buf • F.Jackson 1 run (Lindell kick), :27.
Ari • FG Feely 61, 1:09.
Buf • FG Lindell 25, 11:10.
Attendance • 60,385.
First downs 19 20
Total Net Yards 306 332
Rushes-yards 33-165 30-182
Passing 141 150
Punt Returns 2-10 3-36
Kickoff Returns 4-86 2-49
Interceptions Ret. 2-36 1-15
Comp-Att-Int 18-33-1 16-36-2
Sacked-Yards Lost 2-12 5-23
Punts 8-44.0 5-51.8
Fumbles-Lost 1-1 0-0
Penalties-yards 5-39 7-67
Time of Possession 31:22 32:28
Rushing • Buffalo, Spiller 12-88, F.Jackson 16-53, B.Smith 2-19, Fitzpatrick 3-5. Arizona, Powell 13-70, Kolb 5-66, Johnson 1-24, Stephens-Howling 11-22.
Passing • Buffalo, Fitzpatrick 18-32-0-153, B.Smith 0-1-1-0. Arizona, Kolb 14-26-1-128, Skelton 2-10-1-45.
Receiving • Buffalo, St.Johnson 6-82, F.Jackson 5-30, Spiller 4-22, Jones 1-9, Graham 1-6, Chandler 1-4. Arizona, Fitzgerald 6-93, Roberts 2-18, Housler 2-12, King 2-10, Floyd 1-24, Powell 1-8, Maui'a 1-7, Doucet 1-1.
Missed Field Goals • Arizona, Feely 38 (WL).