Stewart was born in Oakland, California. He attended Saint Elizabeth High School in Oakland. St. Elizabeth honors a graduating senior who earns the most community service hours with the David Stewart Award.
Stewart was drafted by the Los Angeles Dodgers in the 16th round of the 1975 amateur draft as a catcher, but made his major league debut on September 22, 1978 as a pitcher. He did not find his niche in the major leagues until some time later. After returning to the minor leagues, he resurfaced in the Majors again in 1981. Teams were unsure how he would be best utilized, and Stewart split time starting and relieving for the Dodgers, Texas Rangers and Philadelphia Phillies in the early to mid-1980s. His nickname at the time was Dave "Smoke" Stewart. In 1986, the Oakland Athletics signed him after he was released by the Phillies. Stewart successfully converted to a starting role with the A's, posting a 9-5 record.
In 1987 he won 20 games while posting a 3.68 ERA and striking out 205 batters. His new-found stardom would not be short-lived as he won 20 or more games in each of the next three seasons (1988–1990). Remarkably, he pitched over 250 innings in each of those four seasons, frequently posting complete games and led a powerful Athletics club to the World Series each of those years. In 1988 he went 21-12, 3.23 ERA while leading the AL with 14 complete games and 275 2/3 innings pitched. In 1989 he went 21-9 with a 3.32 ERA, and in 1990 he went 22-11, finishing 3rd in the AL with a 2.56 ERA and led the league in innings pitched (267), complete games (11) and shutouts (4)
In 1989, the Athletics won the World Series championship, with Stewart, who won two of the four games while giving up just three runs (2-0 1.69 ERA including a complete game shutout in the opener), being named World Series MVP. In 1990, the A's won their third straight pennant, beating the Boston Red Sox in the American League Championship Series, and Stewart was named the ALCS MVP going 2-0 with a 1.13 ERA. However, Oakland was upset in the World Series with a sweep by a decidedly underdog Cincinnati Reds squad. Despite going 0-2 in the series Stewart still posted a very respectable 2.77 ERA.
Stewart was also a part of the 1992 Oakland team which lost in the ALCS to the Blue Jays. Toronto went on to win the World Series that year, catching Stewart's eye and prompting him to sign with them in 1993. The Blue Jays made it to the ALCS once again, and triumphed over the Chicago White Sox 4 games to 2, with Stewart winning ALCS MVP honors for the second time in his career. The Blue Jays then went on to defeat the Philadelphia Phillies 4 games to 2 in the World Series. Stewart remained with the Blue Jays for the 1994 season, then returned to Oakland to finish his career in 1995.
Over his career, he started 18 games in the postseason, compiling a stellar 2.84 ERA and 10-6 record. In the LCS, he was especially dominant, going 8-0. Including the postseason, Stewart posted a 9-1 career record against Roger Clemens.