Around 30 minutes minimum, and around 60 minutes maximum.
It seems that most invasion missions take about 30 minutes (playing on higher levels) and this seems a decent time. Other missions I have played fit this kind of time scale. It allows you to rotate crews around when you have lots of players, so people aren't sat doing nothing and just watching. When a mission lasts less than 30 minutes (say 20 minutes) and it doesn't feel like you get "stuck in" enough. It feels more like a quick skirmish than a proper mission.
As for the 60 minute max, I have played missions that have lasted longer (2 to 2.5 hours) and they tend to begin to drag. I'd determine therefore that any mission over 60 minutes would begin to get boring. If you want a longer mission, then there needs to be a VERY good story line driving it with plenty for ALL the officers to do throughout. So far, I have not managed to find (or script) such a mission.
So there you go, that is my vote and reasons! Hope it helps.