My idea for national service is to give young people a choice:
Alternative #1. Before they turn 25, begin serving for a shorter period of time than Alternative 2 would require. I don't know how long; it would depend on the need and could be somewhere between 12 to 24 months.
Alternative #2. Do no mandatory service before 25, but if the national need arises at any age before their retirement, based on a proclaimed national emergency like Bush's War on Terror, those who did not serve earlier and are chosen by lottery will be required to serve twice as long a time period as Alternative 1. Almost no one who failed to serve earlier would be exempt from the lottery.
That's the basic idea, although improvements are possible - you can adjust the incentives so that right number of people sign up for military versus nonmilitary national service, or sign up right away versus taking a chance on the lottery. I recognize that you probably can't make a worthwhile modern soldier out of someone for a useful period out of a total period of 12 months, but special support roles that require less training could be developed.
The key issue is that almost no one who skips the initial service gets out of the lottery. No, a sedentary 55 year-old won't be fighting door to door under this system, but he could very well help with paperwork in Baghdad or Kabul and take his chances along with everyone else. And no exemptions at all based on the person being more valuable doing whatever she happens to be doing currently when her number's called. This is a new social compact we're talking about, and economic efficiency arguments get trumped.
The economic efficiency of not fighting Bush's Iraq War, or ending it much sooner than will otherwise happen, is pretty obvious and a likely benefit if the general and older population had a much closer connection to people being sent involuntarily to Iraq.