He played in Major League Baseball (MLB) for the Washington Nationals, Tampa Bay Rays, Seattle Mariners, Kansas City Royals, and Baltimore Orioles.
When Ross Detwiler suffered an injury, Karns was called up to take his place in the pitching rotation, and made his major league debut on May 28, 2013.
[7] He started, and lasted 4+1⁄3 innings, allowing three earned runs, five hits, and two walks, in a game the Nationals won, 9–3.
[8] On February 13, 2014, Karns was traded to the Tampa Bay Rays in exchange for José Lobatón, Felipe Rivero and Drew Vettleson.
Due to numerous injuries to begin the 2015 season, the Rays gave Karns a rotation spot for Opening Day.
On November 5, 2015, the Rays traded Karns, C. J. Riefenhauser, and Boog Powell to the Seattle Mariners in exchange for Brad Miller, Danny Farquhar, and Logan Morrison.
[14] His 2017 season with Kansas City was cut short due to injury, undergoing surgery for thoracic outlet syndrome in July.