To be honest, the amount of time migrating from one type of appliance to another doesn't vary too much based on the appliance type. If you're dealing with VSX or one of the Scalable Platforms, that could make things more complicated.
One factor to consider is: how much downtime is allowable. If you want to minimize it, then you'll probably want to temporarily enable the "Allow Out of State" Global Properties for TCP and UDP traffic so that in-process connections don't get dropped by the firewall (enable 24 hours before, disable 24 hours after). If you can take an outage, then you don't need to do this, but obviously connections will drop.
The more prep work you can do beforehand in terms of staging, the better, of course.