A man has been arrested after allegedly carjacking and crashing a taxi in the Melbourne CBD last night.

The taxi was travelling on Elizabeth Street at 9.40 pm, near the intersection of Flinders Lane, when the male passenger allegedly threatened the driver.

The driver was able to flee the car and was not physically injured.

Sydney will soon follow Paris and New York by introducing fixed-fare taxi trips from the airport to the CBD.A man has allegedly carjacked and crashed a taxi in the Melbourne CBD. (9News)

The passengers allegedly took the keys and drove the taxi towards North Melbourne, before returning to the city.

There it crashed into another car, pushing it into other vehicles and traffic lights at the intersection of Flinders Street and Spencer Street at about 10 pm.

The alleged carjacker tried to flee but was restrained by an off-duty officer, police claim.

A 36-year-old man of no fixed address was arrested and taken to hospital for assessment.

He will be interviewed by detectives.