It’s so frustrating to watch Marius take part in the same condemnation that the people of Digne showed Jean Valjean when he arrived there two decades earlier. With all his ideals, you want him to know better, but he “had not yet made full progress” and still believes that shunning the ex-convict is the right thing to do. He makes Valjean unwelcome and does his best to distract Cosette and weaken her emotional ties to her father.
But Marius has also scrupulously tried to pay back Thénardier for saving his father’s life, despite knowing how vile he is. Unlike Javert, who struggles with the idea of owing Valjean his life, Marius wouldn’t hesitate to honor his debt of gratitude.
Valjean knows this. Maybe not the Thénardier connection, but he’s observed Marius’ character, and Marius has mentioned looking for the man who saved his life at the barricade. And he knows that Marius would insist that he stay…which is why he doesn’t tell him. Valjean tells Marius the bare minimum, leaving him to fill in the blanks as darkly as possible: he already believes Valjean murdered Javert, and as he investigates, he comes to believe that Valjean defrauded M. Madeleine.
Strangely enough, the one time Thénardier proves to be better at something than someone else is in investigating Jean Valjean. He turns up irrefutable evidence that Valjean is Madeleine, that he did not kill Javert, and that he rescued Marius. To be fair, that’s not what he was trying to prove…
But if Marius had asked questions, and Valjean had answered them, he would have reconciled the conflicting views right then and remained welcoming. Valjean might still have fallen into despair, might still have insisted on leaving (as he does in the musical), but Marius wouldn’t have been complicit.