The most prestigious individual honour in world football is due to be handed out on October 30.
Messi and Haaland are generally considered favourites for this year's honour.
Haaland scored 52 goals in 53 games for Manchester City last season to help them win the Premier League, FA Cup and UEFA Champions League.
Messi on the other hand, impressed for Argentina on their run to FIFA World Cup glory in Qatar and won the French Ligue 1 with Paris Saint Germain.
When asked who he thinks should win the Ballon d’Or this year ahead of Man City facing Brighton on Saturday, Guardiola gave a brilliant response, as he said: “I’ve always said there should be two sections: one for Messi and one for the others.”
“Haaland should win yes or yes, he scored 50 million goals. But Messi… his worst season is better than the rest. Both deserve it.
“Realistically I want to say I want Erling because he helped us but Leo won the World Cup. It’s nice that many players from Man City will be there.”
Ruben Dias, Julian Alvarez, Josko Gvardiol, Kevin De Bruyne, Rodri and Bernardo Silva are the other Manchester City players on the 30-man shortlist.