Premier League leaders Liverpool will play at League One side Shrewsbury in the fourth round of the FA Cup.
Holders Manchester City face Fulham, while Chelsea also play second-tier opponents, away at Hull City.
Leicester, second in the Premier League, meet Championship Brentford.
Manchester United, who defeated Wolves 1-0 in a replay, will travel to League One Tranmere Rovers, who beat Watford 2-1 in a replay.
Arsenal's reward for beating Championship leaders Leeds 1-0 is a trip to Bournemouth.
The matches will be played between Friday 24 and Monday 27 January.
Fourteen Premier League teams remain in the competition, while Northampton Town, ninth in League Two, are the lowest-ranked side in the last 32 and they are at home to Derby County.
Birmingham City's home is St Andrew's but they will be the away team at their own stadium when they face Coventry, who are sharing the ground with Blues this season.
FA Cup fourth-round draw
Tranmere Rovers v Manchester United
Hull City v Chelsea
Southampton v Tottenham Hotspur
Queens Park Rangers v Sheffield Wednesday
Bournemouth v Arsenal
Northampton Town v Derby County
Brentford v Leicester City
Millwall v Sheffield United
Reading v Cardiff City
West Ham United v West Bromwich Albion
Burnley v Norwich City
Coventry City v Birmingham City
Manchester City v Fulham
Newcastle United v Oxford United
Portsmouth v Barnsley
Shrewsbury Town v Liverpool