The way I think about this is: if not SpaceX, some govt or company will one day establish a base on another planet. Something like the stations we have in Antarctica. So SpaceX taking a shot at this isn't totally absurd - over-ambitious, sure, but not so ridiculous as to be out of the question. Maybe it won't happen for a few decades, or a century - but IMO it's very likely it will happen some time. And that's what ultimately matters. It doesn't have to be Elon Musk's company that does it.
Cities on Mars - it's not productive debating this at such an early stage, though it makes for an interesting discussion.