However, there was a lot for Broncos fans to feel good about in a game that was a tale of two halves.
The Broncos started the game looking like an AFC contender, as Peyton Manning and the offense generated a 17-0 lead in the first quarter.
The Broncos took a 24-10 lead into halftime, as the starting defensive unit stopped the Niners and forced them into numerous punts.
The second half went in favor of the visitors, as the Denver backup units on both sides of the ball failed to produce.
The Broncos offense failed to move the chains and the 49ers offense rolled to 19 second half points.
The best news of the day? Only minor injuries for the Broncos. In these preseason games, sometimes that is all that matters.
Let's take a look at the Broncos' final grades and evaluations.
OVERALL GAME GRADE: A+
Peyton Manning looked as sharp as he has in two years. Manning went 10-for-13 for 122 yards and two touchdowns. Manning threw well to all areas of the field and specifically threw passes to his right. He took a big hit late in the first quarter then got back up and answered with a touchdown pass.
OVERALL GAME GRADE: A-
The top unit looked excellent. Peyton Manning was crisp and the offensive line was very good. Manning threw for two touchdowns and the wide receivers stepped up and made plays. The first quarter may have given a number of opponents on the Broncos 2012 schedule a rise in blood pressure.
However, the backup units were abysmal. Caleb Hanie threw one touchdown but both he and Osweiler struggled. Osweiler struggled to merit even first downs. Weber got very few plays on the last offensive series and showed some promise. The Broncos gained just 27 net yards on offense in the second half.
With three minutes remaining and trailing 29-24, Adam Weber is going to get some playing time for the Broncos. Weber made an exciting play flipping the ball left handed while under pressure to Jason Hill for a 20-yard gain but the play was negated by a holding call on OL Chris Clark. Weber got sacked on third and long and that did it for the Broncos.
Osweiler hit Andre Caldwell in between the 1 and the 7 on his jersey but Caldwell didn't catch it. Now trailing for the first time all day, the offense needed to make a play. Osweiler converted a third down with a short pass to tight end Virgil Green. Osweiler scrambled and tried to pick up a first down but dove just short of the mark. The Broncos went for it on fourth down but a quick pitch to Jeremiah Johnson lost three yards and the 49ers took over the ball in Denver territory.
Ronnie Hillman showed some flashes. Running predominantly behind second and third string linemen, he had six carries for 13 yards and he had one reception for four yards. The Bronco offense once again went three and out.
Brock Osweiler stepped in at quarterback for Denver. Caleb Hanie finished the game 8-for-12 for 92 yards with a touchdown, a fumble and an interception.
Osweiler hit tight end Cornelius Ingram directly in the hands but Ingram dropped it. He may have turned to look upfield before he made the catch. The Broncos were then forced to punt.
A holding call by offensive lineman Adam Grant negated a scramble for a first down by Brock Osweiler and once again the Broncos had to punt.
Caleb Hanie came in to relieve Peyton Manning. On his first drive, Hanie had Eric Decker open in the seam but the pass was short and intercepted by former Denver Bronco Perrish Cox.
The wide receivers definitely stepped up. There were great catches by Demaryius Thomas, Brandon Stokely, Matt Willis and of course the two touchdowns by Eric Decker.
The Broncos moved the ball reasonably well after a SF field goal. After moving out near midfield, Hanie had the ball punched loose and the Broncos were forced to punt.
Ronnie Hillman made his first appearance and looked good. Knowshon Moreno is beginning to realize that his days are numbered if he doesn't make his move. He ran very hard, breaking tackles and pressing forward.
The offensive line has did a very good job in protecting the quarterback, and they opened up holes at times for Broncos runners. The test for this group may be can they get a yard when they have to?
Hanie finished out a drive with a five-yard touchdown pass to tight end Joel Dreesen. That was a good drive for the offense and especially for Hanie.
The offense looked solid on the opening drive of the game. Denver took the ball, mixed the pass with the run and drove to the San Francisco 35-yard line. The offensive line protected Manning well and opened up some decent holes for running back Willis McGahee. McGahee finished the drive with two carries for 15 yards. The Broncos were forced to settle for a long field goal.
On the second drive of the game, Brandon Stokely made the catch of the preseason so far, tipping the ball to himself and picking up a first down. Manning went deep, lofting a ball down the sideline to Lance Ball for a 38-yard gain. Manning finished the drive with a 10-yard touchdown pass to Eric Decker.
The Broncos took advantage of a SF turnover and scored another touchdown. Willis McGahee ran hard through some good sized holes and Manning threw his second touchdown of the day to wide receiver Eric Decker.
OVERALL GAME GRADE: B-
Again, the starters shined. The backups struggled. Some of that is just preseason NFL football. And some of it shows a lack of depth. The long play to Vernon Davis was one of the lone plays that really hurt the defense but it was painful. On the whole, the defense does seem to be improving.
The defense was put in a poor position when the offense failed to convert a fourth-down play. Malik Jackson and David Bruton made very good back-to-back tackles and the Broncos held San Francisco to a field goal. The Broncos then trailed 29-24 with three minutes remaining.
Third-string quarterback Scott Tolzien now took advantage of our backup defensive players. Once again, the Niners kept moving. The Broncos forced a fumble by Tolzien but San Francisco recovered and they kept the possession. The Niners kicked yet another field goal and now lead 26-24.
Drayton Florence gambled on a quick out and gave up a 45-yard pass completion from Kaepernick to wide receiver Kyle Williams. The defense allowed the SF running game to take over the game. The 49ers were at the Denver three-yard line and threatened to take the lead. The backup unit made a strong third-down stand and as the quarter ended and held the 49ers to just a field goal.
The 49ers opened the second half with the ball on their own 20. Following a first down, the Broncos' Omar Bolden was called for a 31-yard pass interference penalty. It looked like the ball would be overthrown but Bolden grabbed the receiver and now SF had the ball inside the Bronco 30-yard line. On third and short, the Broncos defense gave up a 26-yard touchdown run straight up the middle to Anthony Dixon.
Colin Kaepernick opened the second half at quarterback for the 49ers and he had their offense driving again. After moving the ball to the Denver 35, the Niners settle for a 45-yard field goal.
Following a Caleb Hanie interception, the Denver defense stood tall and held the Niner offense to just a field goal.
The Broncos defense took the field after a Bronco punt and forced San Francisco to a three and out. Strong tackling and pursuit to the ball were strong points for this unit.
I keep waiting for Champ Bailey to show signs of aging but it just is not happening. He continues to be one of the top cornerbacks in the league.
The Broncos defense rebounded from an average showing last week to start off the game very strong on the first series. After stopping Frank Gore for a loss of five yards on the first play of the series, Elvis Dumervil managed to sack SF quarterback Alex Smith on third down.
The Denver defense gave up a first down before recovering a fumble by 49er quarterback Alex Smith. Wesley Woodyard recovered the fumble.
Alex Smith came out on the third drive and attacked the Denver secondary, throwing a 44-yard touchdown pass to tight end Vernon Davis on the first play of the drive. You can't go to sleep in the NFL.
OVERALL TEAM GRADE - B+
This is should be a strength for the Broncos all season. Both Matt Prater and Britton Colquitt are among the top specialists in the game and the coverage units did a solid job. The return units are still a concern.
Matt Willis attempted an ill-advised pitch on a kick return that nearly gave the 49ers either a touchdown or a safety. Willis is a veteran and should know better.
Colquitt had his worst punt of the day, a 36-yarder to the SF 37-yard line.
The Broncos send Jeremiah Johnson back to return a kickoff but Johnson misplays the catch and is forced to fall on it in the end zone for another touchback.
Colquitt had another great punt of 53 yards. The coverage team did a nice job of wrapping up the returner after just a seven-yard gain.
Colquitt is now getting more work. He bombed a 56-yard punt that was returned for 10 yards.
Britton Colquitt showed why he is among the league's top punters as he drove a 43-yard punt to the Niner 14-yard line where returner Ted Ginn Jr. was forced to call for a fair catch.
Matt Willis took a big chance on a punt-return opportunity. 49er punter Andy Lee launched a good punt that Willis waved off and allowed to bounce. Fortunately for Willis, it bounced out of bounds. He had to fair catch that one. The return units for Denver are iffy at best.
Matt Prater is the best long-range kicker in the NFL. Once again he connected from outside of 50 yards hitting a 53-yarder to put the Broncos up 3-0.
Matt Willis caught a 61-yard punt from SF punter Andy Lee at the 15-yard line. Willis managed just two yards on the return.
Denver tried an onside kick and recovered the ball but touched it before it had traveled the necessary 10 yards.
OVERALL GAME GRADE: B-
The coaching staff did a good job of preparing this team for the San Francisco 49ers. The offense mixed the run and the pass. The defense did a nice job of bottling up quarterback Alex Smith and forcing him to beat them with the pass. Denver didn't get the win but the coaching staff has to feel good about the things they saw.
Bad play call by the coaching staff on fourth down. They ran a quick pitch to Jeremiah Johnson but going outside in the NFL rarely works on short-yardage plays. That one lost three yards and turned the ball over to the 49ers in Denver territory.
Once again, the backup units on both sides of the ball struggled in the game and throughout the preseason. John Fox dodged a bullet after challenging a play that could not be challenged. That could have been a penalty and first and goal for the Niners. Instead, the refs wave it off and SF settles for another field goal
This coaching staff is trying to evaluate talent but the backup units really struggled. Depth is a big issue for this team.
This team looked ready to play throughout the first half and aside from a couple mistakes, they completely outplayed the 49ers. It was a good job by John Fox and the coaching staff.
All units [layed reasonably well although Caleb Hanie still did not look like a reliable backup quarterback. The coaching staff has to have someone ready behind Peyton Manning.
The scheme looked very good as the offense mixed the run with the pass and the execution has been very good.
Not a bad decision by the Broncos coaching staff to try an onside kick after the second touchdown. It was executed well but a Denver player touched the football before it had gone the required 10 yards.