SAN PAOLO - Five million people marched through Sao Paulo overnight in a traditional "March for Jesus" that organisers and media claimed was the biggest Catholic demonstration in the world.

The massive crowd streaming along a freeway in the north of the city accounted for around a quarter of Sao Paulo's population of 20 million, and underlined Brazil's position as the country with the biggest Catholic population on earth.

The event marked Corpus Christi, which falls 60 days after Easter and is celebrated as a national holiday in Brazil.

Many of those marching mixed football fever into the proceedings, wearing the green-and-gold jerseys of Brazil's national squad competing in South Africa's World Cup later this month. Trucks blaring rock gospel and hymns punctuated the procession.

Organisers said that 630 floats coming from all over the country took part in the multi-denominational march, which was scheduled to last nearly 12 hours.

The Estadao private news agency said up to five million people were expected to participate - much more than the one million who took part last year according to police.

At the same time as the march was happening, an estimated two million cars were streaming out of Sao Paulo as other residents headed to the beach or countryside to enjoy an unofficial four-day long weekend.