The duration depends on the complexity of your solution and the amount of content it has. The number of Sitecore customizations and integrations plays a huge role as well. We strive to complete migration (without user training) in 2-4 weeks, but much bigger projects can require 1.5-3 months.