Some people are saying use an A record and others a CNAME for a catch all subdomain.
Which should I use and why?
If you have multiple domain that points to the same site:
With A record: every of your domain points to the IP of your site, when your change your server's IP, you will need to update multiple time.
With CNAME: every of your domain points to a CNAME, when your server's IP change, you will only need to update the A record of that CNAME.
If you have a domain that doesn't belongs to you, or you don't have the control of what it will be pointing to, you can only use CNAME.