Hello @Roi_F and welcome to the Asana Community Forum
Yes you can easily achieve this by setting up teams and projects.
If you have similar tasks in each project you might wanna consider setting up a template project and template task.
And you can restrict projects, grant view access only and much more.
Asana has a lot of great information and guides online, I recommend looking through those first
In terms of how much access you want to give clients I have written a post about this topics recently in case you are interested: 🚦 Dealing with external clients - How much access should they have?
Hope that helps