KANSAS CITY, Mo.  Here was Kansas City coach Todd Haley on Sunday, trying to tamp down the exhilaration of the NFL's most surprising 3-0 start.

"We're trying like heck to make that transition from a not-so-good team into a good team, sooner rather than later," he said moments after the most complete victory of the Chiefs' young season, 31-10 against San Francisco. "But we're by no means there."

BOX SCORE: Chiefs 31, 49ers 10

Go back 10 years, he cautioned. Haley was a young assistant on a New York Jets team that started 3-0, made it to 4-0, then tailed off to a nondescript 9-7, non-playoff-qualifying finish. "Nobody else remembers that team but those of us who were on it," he said. "So we haven't done anything yet. We've got a long way to go."

By the same token, the Chiefs have come so far — Unbeaten through three games for the first time since 2003.

BESTS & WORSTS: Missed kicks a big story on Sunday

Quarterback Matt Cassel threw for three touchdowns against the 49ers, the most of his 18-game Kansas City career. Both Jamal Charles and Thomas Jones rushed for more than 90 yards, and the Chiefs totaled 207 on the ground against one of the league's better defenses against the run.

K.C.'s own defense piled up five sacks and held San Francisco running back Frank Gore, coming off a 112-yard performance against the defending Super Bowl champion New Orleans Saints, to barely a third of that. An acrobatic interception by cornerback Brandon Flowers set up the game's first score.

What could go right did go right — after three years of most everything going wrong — and the Chiefs ran away from the widely projected favorite in the NFC West. The 49ers fell to 0-3.

"They came out and took advantage of the opportunity they had, and we did not," San Francisco coach Mike Singletary said tersely.

"There are a lot of guys in this locker room," Cassel said, "who went through that tough year last year and the adversity. To be 3-0 at this point, we're all excited."

Kansas City needed 11 weeks to get to three wins a year ago, and finished 4-12. The Chiefs ranked among the NFL's bottom 10 in passing offense and total offense, rushing defense and total defense and both scoring offense and defense.

Once-intimidating Arrowhead Stadium was becoming a tomb. The 2009 finale there was subject to the first local TV blackout in 19 years.

Sunday, it was roaring again.

The Chiefs scratched out their first two wins of the year, by a touchdown in the rain against San Diego and by two points at Cleveland. And they held a tenuous 10-3 lead over the 49ers early in the third quarter. Haley, who'd won a fourth-and-one gamble late in the game at Cleveland, running for a clinching first down rather than punt, then free-wheeled again.

At the 49ers' 45-yard line, Cassel lined up as a receiver. Jones took a snap in the Wildcat formation and handed off to rookie Dexter McCluster, who flipped back to Cassel. He lofted a TD pass to a wide-open Dwayne Bowe in the back of the end zone.

"That definitely gave us a jolt of energy," said Cassel, who finished 16-for-27 for 250 yards, with one first-half interception. "From there, we were kind of having a party out there."

They again showcased what looks to be one of the league's best draft classes. Tight end Tony Moeaki, a third-rounder out of Iowa, made a leaping, one-handed grab of an 18-yard TD pass that made it 24-3. McCluster, the versatile second-rounder out of Mississippi who returned a punt for a score against San Diego, caught his first TD pass as a pro against the 49ers and ran 30 yards with another punt return.

"You might dream something better," McCluster said, "but you know what? This is reality, and this is great."

It is for another couple of weeks, anyway. The Chiefs get a bye this week, then travel Oct. 10 to Indianapolis.