I'd say Hanoi. They are very different and personally i liked hanoi better as it had a little bit more charm and was more of a culture shock, whereas i found hcmc to be more of a big city.
Halong bay is amazing, check out handspan, they do a great range of tours from hanoi and also from hcmc, we did a one day halong bay and from hcmc a mekong delta trip which was great too. Handspan will be more pricey than some other companies but worth the money and they have really small groups (we had 4 and 2 people on our trips). maybe check out their website to get some ideas?
overall i'd go for hanoi for the charm
