Civil engineer here.
If I were to do it again... I would be in Mechanical or aero.
I'm not the brightest bulb in the box, and lots of the people in my classes were... I felt like an idiot for the first year or two during the math, physics, chem, etc, etc... Then I got serious, busted my ass, and got good grades. I still gradumatated with a 2.7 because I was on the flunk line for 2 years.
I had lots of job offers when I graduated, because I got involved with ASCE (all branches have prof societies) and started showing up the seniors (got the "Outstanding Senior Award" for the engineering school when I was a junior).
Bottom line, our motto was "engineering students do more work after 3am than any other student does all week." And it was the truth. When I wanted to do well, I did nothing but class/work/study/nap, repeat.
Hard work CAN replace born-with genius.
The nice thing about an engineering degree is it teaches you how to learn. I have self taught all manner of hobby things (ahem... Rovers?) since school because I now get bored easy.
The $$ benefit is that there is always engineering work needed. I'm applying for positions in several overseas countries now and it's exciting (yeah, got bored with hometown).
Why ME or AE? I would prefer to actually design solutions to problems rather than figure out how to re-use old solutions as it seems we do in civil. I find civil somewhat boring - to be fair, I hated structures in school and regret it, and have considered going back for a MS in structural and getting into that field of civil. I tihnk structures is perhaps the most interesting aspect of civil. But, I'd rather be a mechanical engineer working for Land Rover, than designing the building for them, or siting the test track.