Citoyens du monde est né d'une conversation entre Matteo Garrone et Gianni Di Gregorio, qui ont collaboré sur Gomorra en 2008. Di Gregorio se souvient : « C’est lui qui m’a suggéré d’écrire un film sur les Italiens à la retraite qui projettent de partir à l’étranger pour vivre un peu mieux, dans un pays où la vie serait meilleur marché. « Tu dois le faire, me disait-il, après tout, les vieux, c’est ta spécialité ! » C’est un vrai phénomène, beaucoup de retraités en parlent, beaucoup veulent aller au Portugal, plusieurs milliers d’Italiens sont déjà partis ».
Une fois son idée en tête, Gianni Di Gregorio a d'abord signé un petit récit publié chez le célèbre éditeur sicilien Sellerio puis s'est lancé dans le film qu'il a passé un an à écrire avec le scénariste Marco Pettenello. La situation dramatique de l’immigration en Italie et les naufrages en Méditerranée ont surgi pendant l'écriture et s'y sont invités. C'est ainsi qu'est né le personnage d'Abu, le jeune garçon africain. « Le film s’est équilibré entre comédie pure et irruption de la réalité. Il est devenu plus authentique ».
Le réalisateur a écrit ses personnages sans penser aux acteurs et a rencontré Ennio Fantastichini et Giorgio Colangeli lors des essais. Il a eu l'impression immédiate qu'ils se connaissaient depuis des décennies : « On est allé diner plusieurs fois pour parler du film et à chaque fois on se racontait nos vies, on finissait ivres, on avait parlé de tout sauf du film. Ce sont deux acteurs très connus en Italie, des comédiens de théâtre ». Fantastichini est décédé peu de temps après le tournage.
Le trio principal de Citoyens du monde est issu de la tradition de la comédie à l'italienne. Ils sont les « soliti ignoti », ceux qu'on ignore toujours, les marginaux oubliés par la société. Cette expression est d'ailleurs le titre original du Pigeon de Mario Monicelli.
Salih Saasin Khalid, qui joue Abu, n'est pas acteur mais un vrai migrant qui a pu partir au Canada avec l’argent qu’il a gagné sur le tournage.