You forgot the best out of all. Stable Diffusion. It's open source, free and superior to dalle-2 and mid-journey v4 with all the custom models and embeddings from the community. Best thing is you can run it locally and offline
Stable Diffusion Web GUI from Automatic1111 (Best one out there right now with a lot of scripts available)
-
https://github.com/AUTOMATIC1111/stable-diffusion-webui
Download Model v1.5 for Stable Diffusion (Way better than v2+ as it contains more source data)
-
https://huggingface.co/runwayml/stable-diffusion-v1-5
Check out the custom models and embeddings from the community
-
https://civitai.com/
If you don't have a good GPU yourself, you can use services like vast.ai where you can rent a GPU.