C'est quasiment la même chose, mais il y a des formes qui sonnent plus correctes que d'autres, selon le contexte grammatical.
Je n'ai pas fait de recherche pour trouver des règles (j'enrichirai peut-être ma réponse plus tard, si je trouve), ainsi, ce qui suit est complètement empirique, mais ça fonctionne.
-- Pour des personnes:
Avec mettre.
Ils ne mettront pas longtemps.
Ils ne mettront pas longtemps à arriver.
Ils ne mettront pas longtemps à se faire virer.
--Pour des personnes: Avec prendre
Le seul usage vraiment correct, de "ne prendre pas longtemps" avec des personnes, que j'ai pu trouver, c'est quand les personnes font une action.
- Ils ne prendront pas longtemps pour se préparer.
(On pourrait aussi dire ici: Ils ne mettront pas longtemps pour se préparer)
Ici ils font l'action. Ils ne prendront pas longtemps (= ne prendront pas beaucoup de temps) pour faire ceci ou cela.
S'ils ne font pas l'action, Ils ne mettront pas beaucoup de temps à se faire virer par leur patron. (le patron fait l'action). Les jours sont comptés, le temps dont ils disposent est compté.
-- Avec l'impersonnel "ça", qui désigne généralement un événement, un chose, un sentiment, peu importe, toute chose inanimée:
Avec mettre:
- ça ne prendra pas bien longtemps.
- ça ne prendra pas longtemps.
Avec prendre:
Mais quand il y a précision, il vaut mieux utiliser le verbe "mettre":
- ça ne mettra pas longtemps à arriver.