the Cardinals put Holland on the 10-day disabled list with a hip impingement. After compiling a 7.92 ERA and a 2.24 WHIP in 25 relief innings pitched, Holland was designated for assignment on July 27. He was released on August 1, 2018. Washington Nationals On August 7, 2018, he signed a contract with the Washington Nationals. He greatly improved from his time in St. Louis, pitching 21 innings with 25 strikeouts, 10 walks, and a 0.84 ERA. Arizona Diamondbacks On January 31, 2019, Holland signed a one-year, $3.5 million deal with the Arizona Diamondbacks. The deal also includes an additional $3.5 million in incentive bonuses. Initially, Holland performed well for the Diamondbacks as their closer, posting a 1.37 ERA in his first 20 games. His season soon unraveled; in his next 20 games, he posted an 8.44 ERA, and blew several save opportunities. Memorably, on July 2, Holland entered in the bottom of the ninth at Dodger Stadium with the Diamondbacks holding a 4–3 lead. He successfully recorded two outs, but then proceeded to walk four Dodgers in a row, tying the game. With the bases still loaded, Holland was replaced on the mound by T. J. McFarland, who promptly walked Cody Bellinger he faced to lose the game. On July 26, Holland entered to pitch the bottom of the ninth at Marlins Park with a 2–1 Diamondbacks lead. He allowed a leadoff double to Garrett Cooper, walked Neil Walker, and gave up a single to Starlin Castro which loaded the bases with nobody out. Jorge Alfaro hit a sacrifice fly to tie the game for the Marlins, and Holland was replaced with Yoshihisa Hirano, who allowed a walk-off sacrifice fly to Harold Ramírez. Following the blown save, manager Torey Lovullo announced Holland would no longer serve as the Diamondbacks' closer. The Diamondbacks eventually designated Holland for assignment on August 7, 2019. He was released on August 10. Washington Nationals (second stint) On August 13, 2019, Holland signed a minor league deal with the Washington Nationals and was assigned to the Double-A Harrisburg Senators. Kansas City Royals (second stint) Holland signed a minor league deal with the Royals on January 29, 2020. He made the Opening Day roster, and had his contract selected on July 23, 2020. With the 2020 Kansas City Royals, Holland appeared in 28 games, compiling a 3–0 record with 1.91 ERA and 31 strikeouts in 28.1