Despite a strong college career, Dorsey was selected in the seventh round with the 241st overall pick of the 2003 NFL Draft by the San Francisco 49ers, due in part to concerns over Dorsey's arm strength. In his first two seasons in the NFL, he played in nine games (starting in seven), completing 171 of his 316 pass attempts, and throwing for 1,712 yards and eight touchdowns with eleven interceptions. He started the 2005 season as the third quarterback behind Tim Rattay and #1 pick Alex Smith, moving into the backup role after the trade of Rattay to the Tampa Bay Buccaneers. He went on to start three games for the injured Alex Smith. In a Week 11 game against the Seattle Seahawks, Dorsey led an inspired comeback and was a two-point conversion away from sending the game into overtime.