Kilroy was born in Philadelphia in 1866. He was one of 13 children of Mary Ann and Patrick Kilroy. He started his professional baseball career with the Southern League's Augusta Browns in 1885. That season, he pitched 447 innings and had a win–loss record of 29–22 with a 0.97 earned run average and 363 strikeouts.
Kilroy starred as an MLB rookie during the 1886 season for the last-place Baltimore Orioles. He started 68 games, completing 66 of them while throwing 583 innings. Although he had a disappointing record of 29 wins and 34 losses, he set a mark that was unequalled in major league pitching. Kilroy struck out 513 batters that season, the most ever in a single season and far ahead of second-place Charles "Old Hoss" Radbourn's total of 441 in 1884. However, in that season there were many differences in game play from the modern rules, such as a base on balls being awarded after six balls rather than the modern four, and the pitcher being located 50 feet from home plate rather than the modern 60 feet 6 inches; it was also the last season in which batters could request either a high pitch or a low pitch. Because of these numerous subsequent rule changes, pitching records from that era are not officially compared to those of the modern era, which is variously regarded as beginning in 1893 (when the modern pitching distance was established) or 1900.
On August 20, Kilroy and Cyclone Miller of the Philadelphia Quakers hurled opposing one-hitters, the first time this ever occurred, though it has since been duplicated four times. Baltimore won that game 1–0 on first-inning errors‚ but didn't get a hit until the ninth. During this remarkable rookie season, he hurled 5 shutouts, 3 one-hitters, and 4 two-hitters, but on October 6 he pitched the only 9-inning no-hitter of his career. He pitched his gem against the Pittsburgh Alleghenys, a 6–0 victory.
Kilroy followed the success of his rookie season with another productive year in 1887. Baltimore began to score more runs, finishing in a respectable third place; in addition, Kilroy lowered his earned run average from 3.37 to 3.07, resulting in an outstanding win–loss record of 46 and 19. During his sophomore year he started 69 games, completing 66 while throwing 589 1⁄3 innings with 6 shutouts. He led the league in wins and shutouts. He had this success even though his strikeout total dropped dramatically to 217. Kilroy pitched and won both games of a doubleheader twice during the 1887 season, once on July 26 and the other on October 1. His 46 wins is still the most ever by a left-handed pitcher in a season. On September 2, he umpired his only game.
After opening his career with two outstanding seasons, he pitched fewer innings and had less success in 1888. Baltimore finished in fifth place, and Kilroy had a 17–21 record in only 40 games. He did complete 35 of those starts and recorded 2 shutouts. Earlier, before the season started and after signing his contract with the team, he married Fanny Denny, although he did spend the honeymoon training with the Orioles.
The 1889 season was Kilroy's comeback season and his last productive season as a pitcher. He completed 55 of his 56 starts, while also pitching in 3 relief appearances, the first of his career. He had a 29–25 record and 5 shutouts in 480 2⁄3 innings. On July 29 of that season, he pitched his second no-hitter, this time a 7-inning affair against the St. Louis Browns that ended in 0–0 tie. It was Kilroy's own baserunning error that negated the only run scored, when he missed third base in the 3rd inning and was called out.
That season was his last for Baltimore, as he jumped to the new Players' League for the 1890 season. He had a disappointing season, winning only 9 games against 15 losses in 217 2⁄3 innings. He only completed 18 of 27 starts for the Boston Reds, and only struck out 48. After the Players' League folded, he traveled around, playing for three teams during the next four seasons, never pitching more than 45 1⁄3 innings. After the 1894 season he disappeared from the majors until returning in 1898, when he played his final season with the Chicago Orphans. He finished his career with 141 wins and 133 losses in 303 games pitched.
After his baseball career ended, Kilroy lived in Philadelphia and owned a saloon. He and his wife had seven children. Kilroy died at the age of 73; he was buried at the Holy Sepulchre Cemetery in Wyncote, Pennsylvania.