Assistants are used through the API and are pay as you go, GPTs are limited to 50 messages/3 hours but cost the Plus subscription.
GPTs are just the easy-access version of Assistants from what I understand. They’re the same thing, just for a different market (non-technical or entry-level)