With the increase in the number of entries, a qualifying competition was introduced
for the first time. Twenty-two clubs were given exemption to the first round, with all
other clubs competing for the remaining ten spots in the last 32.
Results of First and Second Qualifying Rounds not included
Third Qualifying Round
- Sunderland 2-0 Newcastle East End
- Birtley{1} 2-5 Sunderland Albion
- South Shore 4-0 Oswaldtwistle Rovers
- Rossendale 2-3 Higher Walton
- Cliftonville w/o-scr Liverpool Stanley
- Linfield Athletic 4-0 Bolton Wanderers
- Chester 2-1 Llangollen
- Wrexham 2-1 Chirk
- Burton Wanderers 5-1 Warwick County
- Small Heath 4-0 Leek
- Notts County 2-1 Derby Midland
- Staveley 5-0 Mellors
- Sheffield Heeley 3-1 Park Grange
- Owlerton 3-2 Ecclesfield
- Grimsby Town 5-0 Cleethorpes Town{1}
- Gainsborough Trinity 5-3 Boston{1}
- Old Brightonians 3-1 Luton Town
- Watford Rovers 0-2 Marlow
- Clapton 0-1 Chatham
- Crusaders 1-0 Old St Mark's
Fourth Qualifying Round
- Sunderland Albion w/o-scr Sunderland
- South Shore 5-0 Higher Walton
- Cliftonville 3-3 Linfield Athletic
- Chester 2-3 Wrexham
- Small Heath 9-0 Burton Wanderers
- Staveley 1-3 Notts County
- Sheffield Heeley 5-1 Owlerton
- Grimsby Town w/o-scr Gainsborough Trinity
- Old Brightonians 5-1 Marlow
- Chatham 0-0 Crusaders
Fourth Qualifying Round Replays
- Linfield Athletic 3-3 Cliftonville
Fourth Round Second Replay
- Linfield Athletic 7-0 Cliftonville
First Round
- Accrington 1-1 Bolton Wanderers
- Aston Villa 3-2 Witton
- Birmingham St Georges 3-2 Long Eaton Rangers
- Bootle{1} 0-3 Preston North End
- Burnley 4-3 Old Westminsters
- Chatham 2-1 South Shore
- Derby County 1-0 Derby Junction
- Grimsby Town 3-1 Sunderland Albion
- Halliwell 2-2 Crewe Alexandra
- Nottingham Forest 2-2 Linfield Athletic
- Notts County 2-0 Old Brightonians
- Notts Rangers 1-1 Sheffield Wednesday
- Small Heath 2-3 West Bromwich Albion
- Swifts 3-1 Wrexham
- Walsall Town Swifts 5-1 Sheffield Heeley
- Wolverhampton Wanderers 4-3 Old Carthusians
First Round Replays
- Blackburn Rovers 5-0 Accrington
- Crewe Alexandra 1-5 Halliwell
- Nottingham Forest w/o-scr Linfield Athletic
- Sheffield Wednesday 3-0 Notts Rangers
Second Round
- Aston Villa 5-3 Derby County
- Blackburn Rovers w/o-scr Swifts
- Chatham 1-1 Nottingham Forest
- Grimsby Town 0-2 Preston North End
- Halliwell 2-3 Birmingham St Georges
- Sheffield Wednesday 3-2 Notts County
- West Bromwich Albion 5-1 Burnley
- Wolverhampton Wanderers 6-1 Walsall Town Swifts
Second Round Replay
- Nottingham Forest 2-2 Chatham
Second Round Second Replay
- Chatham 3-2 Nottingham Forest (@ Kennington Oval)
Quarter Finals
- Blackburn Rovers 8-1 Aston Villa
- Chatham 1-10 West Bromwich Albion
- Preston North End 2-0 Birmingham St Georges
- Wolverhampton Wanderers 3-0 Sheffield Wednesday
Semi-Finals
- Preston North End 1-0 West Bromwich Albion (@ Sheffield United)
- Wolverhampton Wanderers 1-1 Blackburn Rovers (@ Crewe Alexandra)
Semi-Final Replay
- Blackburn Rovers 1-3 Wolverhampton Wanderers (@ Crewe Alexandra)
Final (@ Kennington Oval, 30/3/1889)
- Preston North End 3-0 Wolverhampton Wanderes