The FA Cup 1948–49 is the 68th season of the world's oldest football knockout competition; The Football Association Challenge Cup, or FA Cup for short. The large number of clubs entering the tournament from lower down the English football league system meant that the competition started with a number of preliminary and qualifying rounds. The 25 victorious teams from the fourth round qualifying progressed to the first round proper.

Extra preliminary round Ties Tie Home team Score Away team 1 Abingdon Town 4–3 St Frideswides 2 Acton Town 1–8 Wingate 3 Appleby Frodingham 2–4 Laceby 4 Arlesey Town 5–2 Bedford Avenue 5 Armthorpe Welfare 2–5 South Kirkby Colliery 6 Ashford 2–0 Woolwich Polytechnic 7 Ashton United 3–0 Mossley 8 Aylesbury United 4–1 Pressed Steel 9 Bangor City 8–1 Orrell 10 Barnton 5–1 Nantwich 11 Basingstoke Town 1–2 Bitterne Nomads 12 Bentley Colliery 3–1 Upton Colliery 13 Berkhamsted Town 3–1 Rickmansworth Town 14 Botley 1–3 Winchester City 15 Bourneville Athletic 2–3 Hednesford Town 16 Bradford United 4–2 Harrogate Hotspurs 17 Brentwood & Warley 8–0 Hoffman Athletic (Chelmsford) 18 Brigg Town 3–2 Winterton Rangers 19 Brightlingsea United 1–3 Harwich & Parkeston 20 Bristol Aeroplane Company 0–4 Hoffman Athletic (Stonehouse) 21 Callender Athletic 6–0 Aylesford Paper Mills 22 Calne & Harris United 1–3 Peasedown Miners Welfare 23 Chatham Town 2–3 Dover 24 Chesham United 6–2 Hemel Hempstead 25 Chippenham United 6–1 Radstock Town 26 Clacton Town 1–0 Briggs Sports 27 Clapton 0–1 Chingford Town 28 Clevedon w/o-scr Wells Amateurs 29 Cobham 2–2 Post Office Telecoms 30 Cradley Heath 4–1 Brierley Hill Alliance 31 Cramlington Welfare 3–4 Hexham Hearts 32 Creswell Colliery w/o-scr Hardwick Colliery 33 Crook Colliery Welfare 0–3 Horden Colliery Welfare 34 Dagenham British Legion 3–2 Colchester Casuals 35 David Brown Athletic 0–11 Ossett Town 36 Dawdon Colliery Welfare 4–1 Cockfield 37 Devizes Town 2–1 Melksham 38 Dorchester Town 3–2 Hamworthy 39 Earlestown 5–1 U G B St Helens 40 East Cowes Victoria 6–1 Sandown 41 Edmonton Borough 0–2 Finchley 42 Eldon Albions 0–5 South Hetton Colliery Welfare 43 Ellesmere Port Town 0–2 Northwich Victoria 44 Enfield 8–0 Civil Service 45 Epsom 4–0 Dorking 46 Eton Manor 5–0 London Transport 47 Farsley Celtic 6–0 Liversedge 48 Frickley Colliery 4–3 Brodsworth Main Colliery 49 Frome Town 2–0 Paulton Rovers 50 Gloucester City 4–0 Cinderford Town 51 Hanham Athletic 2–0 Bristol St George 52 Harlow Town 1–4 Bishop's Stortford 53 Harrowby 2–11 Glossop 54 Headington United 4–2 Osberton Radiator 55 Heanor Athletic 0–1 Linby Colliery 56 Hessle Old Boys 2–3 Meltham Mills 57 Hoyland Common Athletic 5–1 Staveley Welfare 58 Ilminster Town 1–5 Bideford 59 Jarrow 2–1 Morpeth Town 60 Langley Park Colliery Welfare 3–4 Eppleton Colliery Welfare 61 Lostock Gralam 4–0 Wheelock Albion 62 Lye Town 2–5 Boldmere St Michaels 63 Lynemouth Welfare 1–2 Shilbottle Colliery Welfare 64 Lyons Club 3–1 Wood Green Town 65 Macclesfield 6–3 Shell 66 Maltby Main Colliery 1–3 Beighton Miners Welfare 67 Margate 3–1 Canterbury City 68 Marlow 2–3 Slough Centre 69 Mclaren Sports 2–4 Farnham Town 70 Metal & Produce Recovery 1–3 Wallingford Town 71 Murton Colliery Welfare 6–2 Shildon 72 N A C Athletic 2–3 Huntley & Palmers 73 New Waltham 3–1 Luddington 74 Oxford City 9–1 Henley Town 75 Pinner 0–7 Hoddesdon Town 76 Pirelli General Cables 2–5 Romsey Town 77 Polytechnic 1–0 Ware 78 Portland United 2–4 Longfleet St Mary's 79 R A O C Hilsea 3–0 Lymington 80 Romford 5–0 Ford Sports (Dagenham) 81 Rufford Colliery 0–2 Raleigh Athletic 82 Ruislip Manor 6–2 Tufnell Park 83 Ruislip Town 2–4 Stevenage Town 84 Salisbury 1–0 Purton 85 Shankhouse 4–1 Alnwick Town 86 Shotton Colliery Welfare 1–4 Seaham Colliery Welfare 87 Silksworth Colliery Welfare 4–3 Willington 88 Slough Town 2–1 Hayes 89 Somerton Amateurs 0–4 Coleford Athletic 90 Soundwell 9–3 Stonehouse 91 Southall 3–1 Windsor & Eton 92 Spencer Moulton 10–3 West End Rovers 93 Spennymoor United 3–0 Blackhall Colliery Welfare 94 St Albans City 5–0 De Havilland Vampires 95 St Helens Town 4–2 Prescot B I 96 St Neots St Marys 0–4 Baldock Town 97 Stanley United 3–3 Consett 98 Steel Peech & Tozer S S 4–2 Bolsover Colliery 99 Sutton Town (Birmingham) 1–0 Lockheed Leamington 100 Swindon G W R Corinthians 6–3 Wootton Bassett Town 101 Tavistock 7–2 Taunton 102 Thorne Colliery 2–0 Barton Town 103 Thynnes Athletic w/o-scr Staffs Casuals 104 Tilbury 2–0 Rainham Town 105 Tiverton Town 2–3 Barnstaple Town 106 Tonbridge 5–0 Bexley 107 Tow Law Town 7–2 Seaham United 108 Upminster 2–2 Sawbridgeworth 109 Uxbridge 1–1 Yiewsley 110 Vickers Armstrong 1–4 Leatherhead 111 Welton Rovers 5–1 Odd Down 112 Welwyn Garden City 0–3 Hendon 113 Weymouth 8–3 Bournemouth 114 Willesden 8–1 Chipperfield 115 Wolverton Town 1–5 Luton Amateur 116 Woodford Town 6–1 Saffron Walden Town

Replays Tie Home team Score Away team 29 Post Office Telecoms 1–6 Cobham 97 Consett 2–1 Stanley United (Declared void) 108 Sawbridgeworth 1–2 Upminster 109 Yiewsley 3–3 Uxbridge

2nd replay Tie Home team Score Away team 97 Stanley United 3–2 Consett 109 Yiewsley 0–3 Uxbridge

Preliminary round Ties Tie Home team Score Away team 1 Abbey United 1–1 Wisbech Town 2 Abingdon Town 2–2 Wallingford Town 3 Altrincham 0–4 Witton Albion 4 Amble 0–4 Blyth Spartans 5 Annfield Plain 2–1 Gosforth & Coxlodge 6 Appleby 3–6 Florence & Ullcoats United 7 Ashington 1–0 West Stanley 8 Atherton Collieries 4–1 Lytham 9 Bangor City 6–0 Crossens 10 Barking 4–0 Dagenham British Legion 11 Barnton w/o-scr Fodens Motor Works 12 Basford United 0–3 Ollerton Colliery 13 Bedford Queens Works 1–2 Stewartby Works 14 Bedford Town 7–0 Kempston Rovers 15 Bentley Colliery 1–3 South Kirkby Colliery 16 Berkhamsted Town 3–1 Slough Town 17 Bideford 6–0 Oak Villa 18 Biggleswade & District 3–1 Eynesbury Rovers 19 Billingham St John's 4–5 Cargo Fleet Works 20 Billingham Synthonia 5–1 Guisborough 21 Boots Athletic 0–6 Ransome & Marles 22 Bourne Town 0–5 Raleigh Athletic 23 Bradford United 8–4 New Waltham 24 Brentwood & Warley 2–1 Eton Manor 25 Bridlington Central United 4–1 Whitby 26 Bromley 2–1 Folkestone 27 Bromsgrove Rovers 5–0 Oswestry Town 28 Burscough 4–1 Marine 29 Callender Athletic 1–2 Dartford 30 Chesham United 1–4 Maidenhead United 31 Chichester City 3–5 Bexhill Town 32 Chippenham United 1–2 Trowbridge Town 33 Clitheroe 5–2 Great Harwood 34 Cockermouth 6–3 Moresby Welfare 35 Coleford Athletic 1–4 Clandown 36 Cowes 1–2 East Cowes Victoria 37 Creswell Colliery 2–0 Sheffield 38 Crittall Athletic 2–2 Upminster 39 Darlaston 2–1 Moor Green 40 Dartmouth United 1–3 Clevedon 41 Darwen 2–0 Barnoldswick & District 42 Dawdon Colliery Welfare 1–3 Spennymoor United 43 De Havilland (Bolton) 0–1 Nelson 44 Denaby United 1–0 Kilnhurst Colliery 45 Devizes Town 3–0 Salisbury Corinthians 46 Dinnington Athletic 5–1 Beighton Miners Welfare 47 Dorchester Town 0–2 Ryde Sports 48 Dover 4–2 Tonbridge 49 Earle 1–2 St Helens Town 50 Easington Colliery Welfare 6–1 Eppleton Colliery Welfare 51 Edgware Town 0–0 Finchley 52 Epsom 2–2 Sutton United 53 Evenwood Town 3–2 Chilton Athletic 54 Farnham Town 2–4 Hounslow Town 55 Farsley Celtic 2–1 Thorne Colliery 56 Filey Town 3–1 Whitby Albion Rangers 57 Formby 4–1 Haydock C & B Recreation 58 Frickley Colliery 4–0 Lysaghts Sports 59 Frome Town 3–7 Peasedown Miners Welfare 60 Gloucester City 5–2 Barnstaple Town 61 Goole Town 6–3 Brigg Town 62 Gorleston 5–3 Whitton United 63 Gosport Borough Athletic 0–1 Bournemouth Gasworks Athletic 64 Grantham 3–1 Gedling Colliery 65 Gravesend & Northfleet 3–1 Sittingbourne 66 Halesowen Town 2–0 Cradley Heath 67 Hanham Athletic 3–1 Hoffman Athletic (Stonehouse) 68 Harrow Town 7–1 Crown & Manor 69 Harwich & Parkeston 2–2 Clacton Town 70 Haywards Heath w/o-scr Hastings & St Leonards 71 Headington United 1–3 Banbury Spencer 72 Hednesford Town 10–0 Thynnes Athletic 73 Hendon 2–1 Hoddesdon Town 74 Hereford United 6–1 Boldmere St Michaels 75 Hexham Hearts 5–0 Birtley 76 Hitchin Town 0–0 Arlesey Town 77 Horden Colliery Welfare w/o-scr East Tanfield Colliery Welfare 78 Horsham 3–2 Lancing Athletic 79 Huntley & Palmers 3–2 Aylesbury United 80 Hyde United 2–1 Ashton United 81 Ibstock Penistone Rovers 1–4 Bedworth Town 82 Ilford 2–3 Chingford Town 83 Ilkeston Town 3–0 Sherwood Colliery 84 Jarrow 0–3 Newburn 85 Kiveton Park Colliery 1–1 Wombwell Athletic 86 Leatherhead 2–0 Cobham 87 Leighton United 2–0 St Neots & District 88 Leiston 1–1 Stoke United 89 Letchworth Town 3–0 Luton Amateur 90 Leyland Motors 1–0 Chorley 91 Leyton 2–0 Tilbury 92 Linby Colliery 3–2 Stamford 93 Littlehampton Town 7–2 Southwick 94 Llandudno 0–1 Newton Y M C A 95 Lloyds (Sittingbourne) 5–1 Erith & Belvedere 96 Longfleet St Mary's 4–2 Winchester City 97 Lostock Gralam 1–4 Buxton 98 Lowca 0–1 Parton United 99 Lowestoft Town 6–0 Sheringham 100 Lyons Club 0–5 Enfield 101 Macclesfield 0–3 Northwich Victoria 102 Matlock Town 3–8 Congleton Town 103 Metropolitan Police 7–2 Camberley 104 Milnthorpe Corinthians 8–2 Frizington United 105 Moira United 8–3 Rugby Town 106 Monckton Athletic 1–2 Firbeck Main Colliery 107 Morecambe 0–1 Fleetwood 108 Morris Sports 1–5 Hinckley Athletic 109 Moss Bay 6–2 Cleator Moor Celtic 110 Netherfield 5–1 Kells Welfare Centre 111 Newbiggin Colliery Welfare 2–5 North Shields 112 Newmarket Town 9–2 Chatteris Town 113 Newport I O W 4–0 Bitterne Nomads 114 Northampton Amateurs 1–4 Symingtons Recreation 115 Norton Woodseats 2–1 Grimethorpe Athletic 116 Norwich C E Y M S 2–0 Cromer 117 Old Grammarians 1–9 Achilles 118 Oxford City 6–1 Bicester Town 119 Penrith 9–2 Bowthorn Welfare 120 Pilkington Recreation 2–5 Ossett Town 121 Poole Town 5–3 Romsey Town 122 Potton United 2–1 Waterlows 123 R A O C Hilsea 2–3 Thornycroft Athletic 124 Radcliffe Welfare United 1–5 Shankhouse 125 Ramsgate Athletic 6–1 Betteshanger Colliery Welfare 126 Rawmarsh Welfare 1–4 Harworth Colliery Athletic 127 Redhill 11–1 Brookwood Hospital 128 Rhyl 2–1 Earlestown 129 Romford 3–0 Grays Athletic 130 Rossendale United 2–0 Bacup Borough 131 Royston Town 1–6 King's Lynn 132 Ruislip Manor 4–3 Wingate 133 Sawston United 2–8 Parson Drove 134 Scalegill 3–8 High Duty Alloys 135 Selby Town 4–2 Laceby 136 Sheppey United 5–4 Margate 137 Shilbottle Colliery Welfare 1–4 South Shields 138 Shoreham 2–1 Hove 139 Soundwell 4–3 St Austell 140 South Bank St Peters 0–2 Smith's Dock 141 South Hetton Colliery Welfare 1–1 Ferryhill Athletic 142 South Normanton Miners Welfare 5–1 Holbeach United 143 Southall 2–2 Slough Centre 144 Spalding United 2–1 Boston United 145 St Albans City 3–0 Polytechnic 146 Stafford Rangers 2–1 Sutton Town (Birmingham) 147 Stanley United 3–1 Silksworth Colliery Welfare 148 Steel Peech & Tozer S S 2–1 Hoyland Common Athletic 149 Stevenage Town 2–3 Leavesden 150 Stoneycroft 0–7 Prescot Cables 151 Stourbridge 3–1 Dudley Town 152 Stowmarket Corinthians 8–0 City Of Norwich School O B U 153 Street 6–1 Tavistock 154 Swindon G W R Corinthians 2–3 Welton Rovers 155 Tooting & Mitcham United 6–1 Guildford 156 Tow Law Town 0–1 Seaham Colliery Welfare 157 Uxbridge 4–3 Wycombe Wanderers 158 Vauxhall Motors 1–1 Baldock Town 159 Walton & Hersham 11–1 Twickenham 160 Warminster Town 3–1 Swindon Victoria 161 Wealdstone 4–0 Willesden 162 Wells City 4–2 Newton Abbot Spurs 163 West Auckland Town 0–1 Murton Colliery Welfare 164 Westbury United 2–1 Spencer Moulton 165 Weston Super Mare St Johns 1–1 Glastonbury 166 Weymouth 3–0 Andover 167 Whitstable 0–1 Ashford 168 Whitwick Colliery 2–0 Nuneaton Borough 169 Wigan Athletic 2–1 Skelmersdale United 170 Wilmslow Albion 0–6 Port Sunlight 171 Wiltshire County Mental Hospital 0–3 Salisbury 172 Winsford United 3–1 Glossop 173 Woking 1–1 Carshalton Athletic 174 Woodford Town 3–2 Bishop's Stortford 175 Worcester City 4–0 Birmingham City Transport 176 Worthing 4–3 Eastbourne Comrades 177 Yorkshire Amateur 2–1 Meltham Mills

Replays