He succeeds Dale Hunter, who resigned last month after guiding the team to the second round of the playoffs.
Oates has spent the last three seasons as an assistant coach with Tampa Bay and New Jersey.
He played 19 seasons in the NHL and recorded 1,420 points over his career.
Oates played in 387 career games for the Capitals and was team captain from 1999 through 2001.
The 49-year-old Toronto native becomes the 16th head coach in franchise history.