Moseley was selected by the Cincinnati Reds in the first round (34th overall) of the 2000 Major League Baseball Draft. Prior to the 2004 season, he was ranked by Baseball America as the fourth best prospect in the Reds' organization. Moseley was traded to the Angels' organization in for pitcher Ramón Ortiz in 2004.
Moseley won his first game as the starting pitcher for the Angels in his Major League Baseball debut on July 17, 2006. With injuries to key starters Bartolo Colón and Jered Weaver, Moseley began the 2007 season in the Angels starting rotation. After the return of Jered Weaver, he was moved to the bullpen in middle relief.
Moseley became a free agent after the 2009 season. In 2010, Moseley was a non-roster invitee to spring training with the New York Yankees. He began the season with the Triple-A Scranton/Wilkes-Barre Yankees. On July 2, 2010, he was called up to the Yankees. He was inserted in the Yankees' starting rotation, while Andy Pettitte was on the disabled list. He was non-tendered after the season.
Moseley relies primarily on an 89-90 mile per hour four-seam fastball, and also throws a curveball and a changeup