I think My Domain is only required when SF is the IdP of a SSO solution and not strictly required when SF is the Service Provider.
If Salesforce is Service Provider then My Domain is mandatory to be setup. Otherwise SP initiated flow will not work.
Where as, if Salesforce is Identity Provider then it could nice to setup My Domain, IdP initiated flow will work perfectly.
My Domain is required before you can use these Salesforce features:
- Single sign-on (SSO) with external identity providers
- Social sign-on with authentication providers, such as Google and Facebook
Also, refer Considerations for setting up My Domain and SSO