Thank you for asking a great question, and one that many people have and are a little confused about.
Civil engineering is a very broad field that includes environmental, transportation, water resources, geotechnical, construction, and structures, just to name a few. Based on what you have told me, you are interested most in structural and/or construction engineering.
If you want to plan and design structures, you would focus on structural engineering. These job does not usually require moving a lot — you can plan and design projects all over the world from one location. You may visit the proposed site, but no need to move there.
Construction engineering is what you would focus on if you want to be on the site of the projects being built. Here is where you would actually get to see the project that has been planned and designed actually get built, and you would manage that process. While not always the case, there is a much greater chance of your needing to move where the project is, or at least commute.
They typical engineering degree can theoretically be obtained in four years. HOWEVER, usually it actually takes more like 4 1/2 or 5 years as it is a very full program. Also, there is a big advantage to getting some job experience while you are in school so that when you graduate you can list this on your resume. I always strongly encourage a co-op program, internships, or summer employment to get that experience.
I happen to have graduated from NC State with a degree in civil engineering, and later went back and got a master's degree in structural engineering. If you would like to see more about their program, go to http://www.ce.ncsu.edu. Also, Penn State has a very strong architectural/engineering program that combines structural engineering with some aspects of architecture. I believe that program may be five years but it is highly respected in the industry.
Hope this helps,
Barbara Mulkey, PE, FASCE