Yes, a multisite is what you need.
The membership part is arguably a separate question, and there are many ways of doing it. I would suggest a dedicated members site users register to, but there are lots of other ways of doing it, and there is no definitive answer.
See here for what to do before you create a network
This is how you'd create a network
Follow up questions for you to ask or research that would be useful:
- How do I programmatically add a user on a site to all other sites
Booking and so on are highly bespoke systems, and very specific and localised, I doubt you'd be able to ask a truly useful question here without it devolving into plugin recommendation or too localised close votes.
If you require payment for membership, that is yet another question, and one that depends entirely on the payment gateways and membership plugins you use. Asking for recommendations for membership plugins here would also be offtopic and result in a closed question as there is no definitive right or wrong answer.