Since your question is quite basic and general, I'll try to answer equally.
Hardware: For a single user instance a Pi 3B+ is sufficient. Still, Lemmy can take up some storage space over time because of the images. So make sure you don't take the smallest SD card you have lying around. I assume you know how install an OS and get basic things running.
Get a domain; there are many providers out there. Consider using a TLD of your country (e.g. .de, .fr). Domains are usually relatively cheap. You're most likely running your Pi at home, so check if you have a static IP address or if you have a dynamic one. First one? Great, go ahead. Second one: Check if your domain provider offers an API to automatically update the DNS record; example provider api.
Have a look at the Lemmy administration docs. Depending on your experience, it is relatively easy to setup. Make sure you understand what you're doing, i.e. first get to know Docker for example, then follow the commands. If you don't understand something, just ask or search online. Lemmy is not very complex to operate, so for every part of the deployment you should be able to find information online.
Set up port forwarding in your router for ports 80 (HTTP) and 443 (HTTPS). You can find information for your specific router online, but for some routers this cannot be done.
Once you have your instance up and running, I would recommend setting it to "private" first. This way you can play around with your instance or reinstall if something goes wrong without having to worry about federation. Once you've federated (communicated with other instances, e.g. by subscribing to communities of other instances), you really shouldn't reinstall!
I hope this helps you with the first steps. Decide for yourself if you want to deal with maintenance and administration "long term". It's perfectly fine to use other instances and not host Lemmy yourself if you don't feel up to it. After all, there is also a security aspect to consider. If you do: have fun with self-hosting!
Yeah, i want to do it as a challenge for myself and maybe a teaching experience. I have tried a few times today and i always got stuck on putting the thing together in docker because all the tutorials are too old or they aren't complete. I am unsure in a few topics about the DNS and setup thing but i think i might try to do it again tomorrow after the frustration of failure of today is gone and i have some more motivation. Is it okay if i just ask my questions to you directly in this thread?
Don't worry, nothing is easy in the beginning and yes, some docs are not up to date because Lemmy has such a steep development curve and therefore frequent changes.
[...] i think i might try to do it again tomorrow after the frustration of failure of today is gone and i have some more motivation.
Do have any other self hosting experience? Maybe a software that is a bit more easy to handle would be a good starter. With that, you can experiment and learn a bit, before starting a (long term) project that requires proxy, database, frontend, backend and configs to make them work together. Not to speak from the maintenance.
Is it okay if i just ask my questions to you directly in this thread?
Sure thing. I can recommend the Lemmy admin matrix chat as well (if you're a matrix user).
Do you mean DynDNS with the automatic updates?
What I mean is: best case is your provider offers an api which allows you to update the DNS records by running a simple script. What I would not recommend is using something like mylemmy.dyndns.org (or similar services) for a Lemmy instance.
They have an ansible script in the docs to set up your own instance. It won't work 100% with debian 12 but you can get around it by reading the docs for the commands that fail.
I have no idea how ansible works but it's pretty easy to follow the instructions.
You do have to get a domain first though so pick something your gonna like because you can't change it later.
I had a hard time with this and I could not get lemmy easy deploy to work. I was finally able to install on a Pi 4 with ansible using ubergeek77's images. It was difficult because of the lack of documentation.