
On Sunday, November 23, 2008, the same afternoon Matt Cassel was throwing for 415 yards in Miami, the Buffalo Bills flew into Arrowhead Stadium on a four-game losing streak and left with a 54-31 win. Trent Edwards threw for two touchdowns and ran for two more. Rookie cornerback Leodis McKelvin intercepted Tyler Thigpen twice, returning one for a touchdown. The Bills forced five turnovers, scored 20 points off them, and put up their highest point total since 1966. It was the most points Kansas City had ever allowed.
That Miami game is covered here: November 23, 2008, Patriots 48, Dolphins 28.
Charles opens it, Lynch answers on fourth down
Kansas City struck first. Thigpen went 4 of 5 for 67 yards on the opening drive and hit Jamaal Charles deep right for a 36-yard touchdown. Connor Barth’s kick made it 7-0 with 11:15 left in the first quarter.
Buffalo answered in seven plays. Marshawn Lynch and Fred Jackson carried the drive, and on fourth-and-1 from the Kansas City 1, Lynch pushed up the middle for the touchdown. Rian Lindell’s kick tied it 7-7. Our fourth-down guide covers the choice Dick Jauron’s staff made at the goal line.
Early in the second quarter Lindell kicked a 21-yard field goal for a 10-7 lead. Larry Johnson then ripped a 63-yard run to the Buffalo 2, and Thigpen found Tony Gonzalez for a 2-yard touchdown. Kansas City led 14-10.
Five takeaways and a 64-yard pick-six
The Chiefs had protected the football for most of the season. Against Buffalo they could not keep it. Reggie Corner stripped Charles, and George Wilson recovered at the Kansas City 28. Lindell kicked a 39-yard field goal that cut the deficit to 14-13.
On the next Chiefs series Thigpen tried to squeeze a pass to Mark Bradley. McKelvin jumped the route at the Buffalo 36 and returned it 64 yards for a touchdown. “It felt like I was in college,” McKelvin said. “My first pick in college went for a score. I’m just out there trying to do my job.” Lindell’s kick made it 20-14, a lead Buffalo never gave back.
Barth answered with a 45-yard field goal. Edwards then lofted a 51-yard play-action strike to Lee Evans to the Kansas City 18, and Lindell hit from 34 yards for a 23-17 lead. McKelvin baited Thigpen again on a deep out to Will Franklin and made his second interception at the Buffalo 47. Edwards hit Josh Reed for 20 and Robert Royal for 25, spiked the ball at the 18, and on third-and-7 from the 15 scrambled left and dove into the end zone with four seconds left in the half. Halftime: Bills 30, Chiefs 17.
| Time | Play | Score |
|---|---|---|
| 1st quarter, 11:15 | Tyler Thigpen passes 36 yards to Jamaal Charles for a touchdown | Chiefs 7, Bills 0 |
| 1st quarter, 6:42 | Marshawn Lynch runs 1 yard for a touchdown on fourth-and-1 | 7-7 |
| 2nd quarter, 15:00 | Rian Lindell kicks a 21-yard field goal | Bills 10, Chiefs 7 |
| 2nd quarter, 13:15 | Thigpen passes 2 yards to Tony Gonzalez for a touchdown | Chiefs 14, Bills 10 |
| 2nd quarter, 8:20 | Lindell kicks a 39-yard field goal | Chiefs 14, Bills 13 |
| 2nd quarter, 7:11 | Leodis McKelvin returns an interception 64 yards for a touchdown | Bills 20, Chiefs 14 |
| 2nd quarter, 3:27 | Connor Barth kicks a 45-yard field goal | Bills 20, Chiefs 17 |
| 2nd quarter, 1:36 | Lindell kicks a 34-yard field goal | Bills 23, Chiefs 17 |
| 2nd quarter, 0:04 | Trent Edwards runs 15 yards for a touchdown | Bills 30, Chiefs 17 |
| 3rd quarter, 12:32 | Edwards runs 5 yards for a touchdown | Bills 37, Chiefs 17 |
| 3rd quarter, 10:09 | Lindell kicks a 38-yard field goal | Bills 40, Chiefs 17 |
| 3rd quarter, 7:53 | Thigpen passes 45 yards to Mark Bradley for a touchdown | Bills 40, Chiefs 24 |
| 3rd quarter, 2:58 | Edwards passes 8 yards to Josh Reed for a touchdown | Bills 47, Chiefs 24 |
| 4th quarter, 9:18 | Edwards passes 17 yards to Derek Schouman for a touchdown | Bills 54, Chiefs 24 |
| 4th quarter, 2:23 | Quinn Gray passes 3 yards to Dwayne Bowe for a touchdown | Bills 54, Chiefs 31 |
Edwards keeps running, and the lead becomes 40-17
Buffalo deferred the opening kickoff, so it received the second half. Four plays and 33 yards later Edwards ran five yards for his second rushing touchdown of the day. Thigpen then fumbled, Marcus Stroud recovered, and Lindell added a 38-yard field goal for a 40-17 lead.
Thigpen still had one deep ball left: a 45-yard touchdown to Bradley that made it 40-24. Edwards answered with an 8-yard touchdown pass to Reed, then a 17-yard strike to tight end Derek Schouman early in the fourth for 54-24. Quinn Gray relieved Thigpen and threw a 3-yard touchdown to Dwayne Bowe with 2:23 left. The final was Bills 54, Chiefs 31.
“We needed that,” linebacker Kawika Mitchell said. “We were a minus-10 on the year, which means we’re not going to win a lot of games. If you’re going to be an effective team you’ve got to win the turnover battle and we did that.” Edwards credited the defense and special teams: “We were getting good field position from special teams and turnovers. Rian Lindell was hot with four field goals and our run game was going and it set up our play action pass game.”
By the numbers
| Bills | Chiefs | |
|---|---|---|
| Quarterback | Trent Edwards, 24 of 32, 273 yards, 2 touchdowns, no interceptions; 6 carries, 38 yards, 2 touchdowns | Tyler Thigpen, 17 of 34, 240 yards, 3 touchdowns, 2 interceptions; Quinn Gray, 7 of 8, 76 yards, 1 touchdown |
| Top receivers | Lee Evans, 5 catches, 110 yards; Josh Reed, 5 catches, 50 yards, 1 touchdown; Derek Schouman, 3 catches, 25 yards, 1 touchdown | Tony Gonzalez, 10 catches, 113 yards, 1 touchdown; Mark Bradley, 2 catches, 52 yards, 1 touchdown; Dwayne Bowe, 3 catches, 58 yards, 1 touchdown |
| Rushing leaders | Marshawn Lynch, 20 carries, 79 yards, 1 touchdown; Fred Jackson, 9 carries, 56 yards | Larry Johnson, 7 carries, 81 yards; Jamaal Charles, 2 carries, 22 yards plus a receiving touchdown |
| Turnovers | 0 | 5 (2 interceptions, 3 fumbles lost) |
| Field goals | Lindell 4 of 4 (21, 39, 34, 38) | Barth 1 of 1 (45) |
Gonzalez’s 10 catches for 113 yards moved him past Kellen Winslow for the most 100-yard receiving games by a tight end (25). McKelvin became the first Bills rookie to return an interception for a touchdown since Brandon Spoon in 2001, and the first Bills player with a multi-interception game in years. Buffalo’s 54 points were the most it had scored since a 58-24 win over Miami on September 18, 1966, and the most Kansas City had ever allowed.
What came next
The win lifted Buffalo to 6-5 and briefly kept a wild-card path open. The Bills then lost three straight — 10-3 to San Francisco, 16-3 to Miami in Toronto and 31-27 at the Jets — beat Denver 30-23, and lost 13-0 to New England to finish 7-9. Kansas City was 1-10 after the game, beat Oakland the next week, and finished 2-14 under Herm Edwards.
The two teams in 2026
The roles have flipped. Entering Week 9 the Bills are 6-1 and the AFC’s No. 1 seed, with a Monday night game at Minnesota framed in our Bills-Vikings interactive preview. The Chiefs are 5-2 and sitting as a wild-card seed after a loss in Denver. They meet again whenever the schedule puts them on the same field; for now Buffalo is chasing January, and Kansas City is trying to climb back into the AFC West race.
The scoring plays, drive notes and player numbers above come from the official play-by-play and game data, with quotes from postgame interviews. 2026 records are through games of November 2, 2026.

No published comments yet. Start the conversation.