Donalds Viljamss 1964. gadā Perdju Universitātē ieguva bakalaura grādu mehānikas inženierijā. Universitātes laikā viņš apguva Jūras kara flotes rezerves virsnieku apmācības programmu. Pēc skolas beigšanas Viljamss izgāja lidotāju apmācības kursus, un 1966. gadā kļuva par Jūras kara flotes lidotāju. Vjetnamas kara laikā viņš dienēja uz lidmašīnu bāzes kuģa USS Enterprise. Veicis 330 kaujas lidojumus.
1973. gadā Donalds Viljamss mācījās Bruņoto spēku štāba koledžā. 1974. gadā viņš absolvēja ASV Jūras kara flotes izmēģinātājpilotu skolu. Pēc tam viņš dienēja Jūras kara flotes gaisa izmēģinājumu centrā.
1978. gada 16. janvārī Viljamss tika uzņemts NASA astronautu grupā. Pēc vispārējās kosmonautu sagatavošanas kursa 1979. gadā viņš tika ieskaitīts Space Shuttle pilotu grupā.
Donalda Viljamsa pirmais kosmiskais lidojums notika 1985. gada aprīlī misijā STS-51-D kā kosmoplāna Discovery pilotam.
Otru lidojumu kosmosā Viljamss veica 1989. gada oktobrī misijā STS-34 kā kosmoplāna Atlantis komandieris.