Match ends, Arsenal 0, Crvena Zvezda 0.
Arsenal reached the knockout stages of the Europa League despite a goalless draw against Red Star Belgrade.
Striker Olivier Giroud, who scored a late winner in the reverse fixture, was guilty of missing a number of chances, twice being thwarted by Red Star goalkeeper Milan Borjan and shooting wide from inside the area.
The game's best chance fell to midfielder Jack Wilshere, but his shot from close range was cleared off the line.
Serbian side Red Star had opportunities themselves, but striker Richmond Boakye could not hit the target with efforts in each half.
The Premier League side top Group H with 10 points from four games and Cologne's 5-2 win over BATE Borisov in the group's other game means they progress.
England hopefuls fail to impress
Manager Arsene Wenger had said before the game that Wilshere was "ready" for an England recall, but the midfielder was not included in Gareth Southgate's latest squad for the friendlies against Germany and Brazil later this month.
Wilshere has largely been fielded in the cup competitions this season and showed glimpses of his capabilities by bursting forward with the ball from midfield, but his performance was not one that will cause Southgate to reconsider his decision.
The former Bournemouth loanee could have settled the game in the second half, but his dinked shot was kept out acrobatically by visiting defender Damien Le Tallec.
Wilshere said: "I feel good. I am trying to get in the team but there are good players here. I am happy with where I am, enjoying my football and being back in an Arsenal shirt."
Wenger added: "He needs these kinds of games to come back to his best level and what Jack needs is to be injury-free for a long period until the end of the season and get games like that. So maybe if he keeps fitness he will be involved next time."
Another player left out of the Three Lions squad, Theo Walcott, was given the captain's armband for the night but he too failed to impress, being unable to exert his influence on the game.
The 28-year-old has played nearly 400 games for the Gunners since signing as a teenager from Southampton in 2005, but now has to be content with playing in a second-string side.
Walcott headed wide from a Wilshere cross in the second half and miscued a shot from inside the six-yard box with only the goalkeeper to beat.
Should Wilshere be in the England squad?
The last of Wilshere's 34 caps for the national team came in their humiliating 2-1 defeat by Iceland at Euro 2016. Asked by contributors to #bbcfootball whether the 25-year-old should be included, they said:
Kyle Warwick: Wilshere is our most talented midfielder - his big problem is time on the field. If he gets that he's in the squad at least.
Matthew Harris: I remember Jack Wilshere playing well for England. Maybe because I don't force myself to forget to protect my prejudices.
Jason Talbot: Someone said Jack Wilshere never played well for England! Five man-of-the-match awards on the spin, two goals away from home.
English teams on the up?
Wenger will be confident of reaching the latter stages of the Europa League but will be hoping to avoid the likes of AC Milan, Lazio and Zenit St Petersburg who have all looked good so far.
Arsenal's progression in the competition comes in the same week as north London rivals Tottenham's impressive victory over Champions League holders Real Madrid and a result that sent Mauricio Pochettino's side through to the last 16.
Manchester City are also through while Manchester United need a point from two games, both sides having won all four group matches. Liverpool and Chelsea are also both well-placed to progress.
The only blemish is Everton, as they exited the Europa League after failing to win any of their four group games.
Arsenal manager Arsene Wenger: "I think they started stronger than us, they played very well tonight. They played at a high pace, they were always dangerous on the breaks and they defended very well.
"In the second half I felt we dominated possession much more, played more in one half, but we lacked a bit of quality in the final ball, vision to find the right space and overall I must say it is a fair 0-0.
"We are a bit frustrated we could not score but overall I believe we lacked a bit of sharpness in the final third.
"We want to win the remaining two games. I believe we will have a similar squad in Cologne and at home against BATE Borisov."
Arsenal travel to face unbeaten Premier League leaders Manchester City on Sunday (kick-off 14:15 GMT).
No frights on Thursday nights - the stats
- The Gunners are unbeaten in their last 16 games in all competitions at the Emirates (won 14, drawn two). However, this was the first time since May that they failed to take all three points (2-2 against Manchester City).
- This was the first 0-0 Arsenal have been involved in at the Emirates since October 2016, when they drew against Aitor Karanka's Middlesbrough in the Premier League.
- Arsene Wenger's side failed to score in a European home game for the first time since February 2016 (2-0 defeat against Barcelona in the Champions League).
- Arsenal have not lost any of the nine home games they have played on a Thursday under Arsene Wenger (won eight, drawn one).
- Jack Wilshere made his first start at the Emirates in European competition since August 2014 (1-0 v Besiktas in Champions League qualifying).
- Red Star Belgrade are the first Serbian team to keep a clean sheet away from home against English opposition since Partizan Belgrade in August 2003 (1-0 against Newcastle in Champions League qualifying).
- 16HoldingBooked at 70mins
- 69WillockSubstituted forNketiahat 68'minutes
- 43Da Silva
Red Star Belgrade
- 4Le Tallec
- 55SrnicSubstituted forRacicat 86'minutes
- 8KangaSubstituted forMilicat 70'minutes
- 49RadonjicSubstituted forPesicat 89'minutes
- Luca Banti
- Shots on Target
Second Half ends, Arsenal 0, Crvena Zvezda 0.
Attempt missed. Francis Coquelin (Arsenal) right footed shot from outside the box misses to the left. Assisted by Olivier Giroud.
Theo Walcott (Arsenal) wins a free kick in the defensive half.
Foul by Marko Gobeljic (Crvena Zvezda).
Substitution, Crvena Zvezda. Aleksandar Pesic replaces Nemanja Radonjic.
Attempt missed. Rob Holding (Arsenal) header from very close range misses to the right. Assisted by Theo Walcott with a cross following a corner.
Corner, Arsenal. Conceded by Filip Stojkovic.
Substitution, Crvena Zvezda. Uros Racic replaces Slavoljub Srnic.
Delay over. They are ready to continue.
Delay in match Filip Stojkovic (Crvena Zvezda) because of an injury.
Foul by Mathieu Debuchy (Arsenal).
Richmond Boakye (Crvena Zvezda) wins a free kick in the defensive half.
Attempt missed. Richmond Boakye (Crvena Zvezda) left footed shot from the left side of the box is close, but misses to the left. Assisted by Nemanja Milic with a through ball.
Offside, Arsenal. Reiss Nelson tries a through ball, but Theo Walcott is caught offside.
Attempt missed. Theo Walcott (Arsenal) header from the right side of the box misses to the left. Assisted by Jack Wilshere.
Offside, Crvena Zvezda. Milan Borjan tries a through ball, but Nemanja Milic is caught offside.
Corner, Crvena Zvezda. Conceded by Mohamed El Neny.
Rob Holding (Arsenal) is shown the yellow card for a bad foul.
Foul by Rob Holding (Arsenal).