For example, a Navy ROTC graduate that selects the nuclear power field can expect to do a full six years on active duty because the school is 1-1/2 years long. A nuclear power school student obligates to a full six years on active duty. (This may be extended if the student applies for submarine duty.)
The ROTC programs (all services) will present cadets with many challenges and I highly recommend them to a high school graduate. The first two years and summer training will give the cadet at taste of whether they want a service career. If the cadet decides it is what they want to do, then they commit to the last two years a summer training and enlistment after commissioning. That the service picks up the total cost of the cadet's room, board, books, and tuition for the junior and senior years is a definite incentive.
As a recent nuclear power Navy ROTC grad, I can tell you that your information is slightly off. All Navy ROTC students are obligated for 5 years of service from the day they commission. That contract is signed on the first day of sophomore year. If you choose to do something that involves extra training (like the nuclear pipeline which involves approximately 2 years of training due to delays in getting spots at schools), you are obligated for an extra year of service.
I recommend going the officer route through ROTC at Va Tech or Texas A&M (disclaimer, I went to Va Tech). I think that having the corps of cadets at a large civilian school offers the best of both worlds. You still get that military experience, but you also get the chance to get away from it occasionally to enjoy all the benefits of attending a large civilian institution. And Va Tech is a very service oriented school, especially their Corps. The school’s motto is Ut Prosim, “That I May Serve”.