IHMO, the one thing that beats a 20-30 year military retirement is doing 10 years active duty; finishing out the rest in the reserves, and getting a federal civilian job. I just finished 11 years active duty in the Navy, I'm in the process of going into the Army National Guard right now; and I have a federal position right now. 11 years active, and got out - am I crazy? Nope - once I retire, I'll get a federal pension that's higher than a 20-year E7 retirement; my reserve retirement - because of my 11 years active duty - will be equal to about two-thirds of what a retired active duty person of the same paygrade would be getting, in addition to my TSP... which the civil service matches dollar-for-dollar if you contribute up to 3%, and then they match fifty cents on the dollar from there up to 5%. Once I retire from civil service, I'll be living on 100% - if not more - of what my final pay will be when I retire.