The dream is over for the Swiss after they failed to build on their superb victory against European champions Spain in their opening game.
Coach Ottmar Hitzfeld knew if his side achieved a two-goal win in this Group H match then they would progress to the last 16.
However they were toothless and had to settle for a point against Honduras, who are also going home after failing to find the target in the tournament.
Hitzfeld chose to put Alex Frei on the bench even though the striker says he is 100% fit after an ankle injury.
Frei's omission was a surprise given that he has scored 40 goals in 76 games for his country.
He eventually came on in the 69th minute but even though they had the majority of possession before and after his introduction the Swiss were left frustrated.
Their heartache was clear to see at the end with players sprawled on the pitch with disappointment etched on their faces.
Honduras exit with a point after their best performance in three games. They showed a lot of steel - Wigan midfielder Hendry Thomas was booked after only four minutes for a lunge at Gokhan Inler - and played some good football.
Switzerland, however, carved out the first chance of the match in the 10th minute but Inler dragged his shot off target after being set up by Tranquillo Barnetta.
Seven minutes later Barnetta floated in a superb cross to the back post, only for Eren Derdiyok to stray offside and head wide.
Then Barnetta tried his luck from 20 yards out but goalkeeper Noel Valladares was equal to his effort.
Honduras were again pegged back in the 42nd minute and Derdiyok delivered the ball into the area.
Blaise Nkufo found himself in the clear, only to get a poor touch and the chance was lost. Then, minutes later, he glanced a header wide.
Hakan Yakin came for Gelson Fernandes at the start of the second half as Switzerland switched things around.
Honduras should have taken the lead in the 54th minute but somehow David Suazo managed to find the wrong side of the post with a header following a cross from Edgar Alvarez.
Barnetta then raced into the area after 60 minutes but Valladares was able to make a comfortable block before Derdiyok sent a shot into the arms of goalkeeper.
Honduras launched a swift counter attack in the 71st minute when Suazo released Alvarez but goalkpeeper Diego Benaglio reacted superbly to push his effort over the top.
Barnetta then picked Stephan Lichtsteiner but he was wasteful in 80th minute as Honduras put up the shutters to get a draw and resotre some of their pride.
Any reproduction, publication or redistribution of this material without the written agreement of 365 Media Group is strictly forbidden.