| Season | Winners | Result | Runner-up | Venue | Notes |
|---|
| 1893–94 | Redditch Town | | | | |
| 1894–95 | Oldbury Town | | | | |
| 1895–96 | Kidderminster Harriers | | | | |
| 1896–97 | Oldbury Town | | | | |
| 1897–98 | Oldbury Town | | | | |
| 1898–99 | Bourneville Athletic | | | | |
| 1890–1900 | No competition held for reasons unknown. |
| 1900–01 | Berwick Rangers (Worcestershire) | | | | |
| 1901–02 | Berwick Rangers (Worcestershire) | | | | |
| 1902–03 | Bourneville Athletic | | | | |
| 1903–04 | Kidderminster Harriers | | | | |
| 1904–05 | Stourbridge | | | | |
| 1905–06 | Stourbridge | | | | |
| 1906–07 | Brierley Hill Alliance | | | | |
| 1907–08 | Worcester City | | | | |
| 1908–09 | Worcester City | | | | |
| 1909–10 | Worcester City | | | | |
| 1910–11 | Worcester City | | | | |
| 1911–12 | Worcester City | | | | |
| 1912–13 | Worcester City | | | | |
| 1913–14 | Worcester City | | | | |
| 1914–1919 | No competition due to World War I. |
| 1919–20 | Stourbridge | | | | |
| 1920–21 | Kidderminster Harriers | | | | |
| 1921–22 | Stourbridge | | | | |
| 1922–23 | Cradley Heath | | | | |
| 1923–24 | Stourbridge | | | | |
| 1924–25 | Cradley Heath | | | | |
| 1925–26 | Cradley Heath | | | | |
| 1926–27 | Cradley Heath | | | | |
| 1927–28 | Stourbridge | | | | |
| 1928–29 | Worcester City | | | | |
| 1929–30 | Worcester City | | | | |
| 1930–31 | Redditch Town | | | | |
| 1931–32 | Kidderminster Harriers | | | | |
| 1932–33 | Worcester City | | | | |
| 1933–34 | Kidderminster Harriers | | | | |
| 1934–35 | Kidderminster Harriers | | | | |
| 1935–36 | Kidderminster Harriers | | | | |
| 1936–37 | Kidderminster Harriers | | | | |
| 1937–38 | Brierley Hill Alliance | | | | |
| 1938–39 | Aston Villa | | | | |
| 1939–40 | Worcester City | | | | |
| 1940–1945 | No competition due to World War II. |
| 1945–46 | Worcester City | | | | |
| 1946–47 | Bromsgrove Rovers | | | | |
| 1947–48 | Bromsgrove Rovers | | | | |
| 1948–49 | Worcester City | | | | |
| 1949–50 | Stourbridge | | | | |
| 1950–51 | Brierley Hill Alliance | | | | |
| 1951–52 | Halesowen Town | | | | |
| 1952–53 | Hereford United | | | | |
| 1953–54 | Aston Villa | | | | |
| 1954–55 | Hereford United | | | | |
| 1955–56 | Worcester City | | | | |
| 1956–57 | Worcester City | | | | |
| 1957–58 | Worcester City | | | | |
| 1958–59 | Worcester City | | | | |
| 1959–60 | Bromsgrove Rovers | | | | |
| 1960–61 | Worcester City | | | | |
| 1961–62 | Halesowen Town | | | | |
| 1962–63 | Worcester City | | | | |
| 1963–64 | Hereford United | | | | |
| 1964–65 | Worcester City | | | | |
| 1965–66 | Kidderminster Harriers | | | | |
| 1966–67 | Kidderminster Harriers | | | | |
| 1967–68 | Stourbridge | | | | |
| 1968–69 | Kidderminster Harriers | | | | |
| 1969–70 | Worcester City | | | | |
| 1970–71 | Kidderminster Harriers | | | | |
| 1971–72 | Kidderminster Harriers | | | | |
| 1972–73 | Alvechurch | | | | |
| 1973–74 | Alvechurch | | | | |
| 1974–75 | Redditch Town | | | | |
| 1975–76 | Redditch Town | | | | |
| 1976–77 | Alvechurch | | | | |
| 1977–78 | Worcester City | | | | |
| 1978–79 | Kidderminster Harriers | | | | |
| 1979–80 | Worcester City | | | | |
| 1980–81 | Stourbridge | | | | |
| 1981–82 | Worcester City | | | | |
| 1982–83 | Kidderminster Harriers | | | | |
| 1983–84 | Worcester City | | | | |
| 1984–85 | Kidderminster Harriers | | | | |
| 1985–86 | Kidderminster Harriers | 3–2 | Bromsgrove Rovers | | 1st Leg: 0–0, 2nd Leg: 3–2, Agg: 3–2 |
| 1986–87 | Bromsgrove Rovers | 4–0 | Moor Green | | 1st Leg: 4–0, 2nd Leg: 0–0, Agg: 4–0 |
| 1987–88 | Worcester City | | | | |
| 1988–89 | Kidderminster Harriers | 3–1 | Bromsgrove Rovers | | 1st Leg: 1–0, 2nd Leg: 2–1, Agg: 3–1 |
| 1989–90 | Kidderminster Harriers | 3–1 | Bromsgrove Rovers | | 1st Leg: 1–0, 2nd Leg: 2–1, Agg: 3–1 |
| 1990–91 | Kidderminster Harriers | 5–1 | Sutton Coldfield Town | | Agg: 5–1 |
| 1991–92 | Bromsgrove Rovers | 4–1 | Sutton Coldfield Town | | Agg: 4–1 |
| 1992–93 | Kidderminster Harriers | 3–1 | Solihull Borough | | 1st Leg: 1–0, 2nd Leg: 2–1, Agg: 3–1 |
| 1993–94 | Bromsgrove Rovers | 5–1 | Kidderminster Harriers | | Agg: 5–1 |
| 1994–95 | Bromsgrove Rovers | 4–1 | Moor Green | | 1st Leg: 4–1, 2nd Leg: 0–0, Agg: 4–1 |
| 1995–96 | Bromsgrove Rovers | 4–3 | Stourbridge | | 1st Leg: 1–2, 2nd Leg: 3–1, Agg: 4–3 |
| 1996–97 | Worcester City | 4–1 | Solihull Borough | | Agg: 4–1 |
| 1997–98 | Kidderminster Harriers | 2–1 | Solihull Borough | | Single game |
| 1998–99 | Kidderminster Harriers | 4–3 | Worcester City | | 1st Leg: 2–3, 2nd Leg: 2–0, Agg: 4–3 |
| 1990–2000 | Kidderminster Harriers | | | | |
| 2000–01 | Moor Green | 5–3 | Evesham United | | 1st Leg: 1–1, 2nd Leg: 4–2, Agg: 5–3 |
| 2001–02 | Kidderminster Harriers | 2–1 | Moor Green | | 1st Leg: 2–0, 2nd Leg: 0–1, Agg: 2–1 |
| 2002–03 | Halesowen Town | 3–0 | Evesham United | | 1st Leg: 2–0, 2nd Leg: 1–0, Agg: 3–0 |
| 2003–04 | Sutton Coldfield Town | 5–4 | Worcester City | | 1st Leg: 2–1, 2nd Leg: 3–3, Agg: 5–4 |
| 2004–05 | Halesowen Town | 3–1 | Studley | | 1st Leg: 1–1, 2nd Leg: 2–0, Agg: 3–1 |
| 2005–06 | Moor Green | 5–2 | Halesowen Town | | 1st Leg: 4–1, 2nd Leg: 1–1, Agg: 5–2 |
| 2006–07 | Evesham United | | | | |
| 2007–08 | Redditch United | | | | |
| 2008–09 | Evesham United | | | | |
| 2009–10 | Kidderminster Harriers | | | | |
| 2010–11 | Stourbridge | | | | |
| 2011–12 | Stourbridge | | | | |
| 2012–13 | Stourbridge | | | | |
| 2013–14 | Redditch United | | | | |
| 2014–15 | Kidderminster Harriers | | | | |
| 2015–16 | Worcester City | | | | |
| 2016–17 | Kidderminster Harriers | | | | |
| 2017–18 | Evesham United | | | | |
| 2018–19 | Alvechurch [2] | | | | |
| 2019–20 | Abandoned due to COVID-19 pandemic.Alvechurch and Bromsgrove Sporting were in the finals. [3] |
| 2020–21 | No competition due to COVID-19 pandemic. |
| 2021–22 | Pershore Town [4] [5] | | | | |
| 2022–23 | Stourport Swifts | | | | |
| 2023–24 | Alvechurch | | | | |
|
| 2024-25 | Worcester City | | | |