When I first moved to the UK I had job opportunities in a couple of cities. I chose London and I've never regretted it.
In my career, like a lot of roles, the jobs exist elsewhere - but they're sparse. You could take a job at my level in a smaller city, but if it didn't work out, or you wanted advancement or just to move on, the opportunities just aren't there. You'd have to move or wait for one of the handful of people in similar roles to move on.
I'm fortunate to be living in a nice bit of outer London. No tube but pretty good transport links. Can be in central London in 20 minutes from our local station.
Raising kids in London is great. Good state schools abound, lots for kids to do and especially to keep teens busy and out of trouble.
It's an incredibly green, walkable city and even if people aren't chatty, there is a lot of genuine connection and friendliness and help if you need it.
As an immigrant - the fact that so many people here come from somewhere else - whether in the U.K. or internationally - often makes it easier to make real friendships and real connections. You're not trying to break in to an area where the majority have generational roots and a support network they've built up since they were young.
For me the clincher has always been its connectedness. It's the best place in the country to get to everywhere else in the country, or anywhere else in the world. As someone who loves to travel, and has family elsewhere, that's a real priority for me.