How to create a rule to automatically assign users to different profile 2 types?
Below is a potential solution for your "... based on the domain name of their email address, I'd like to associate them to different profile types ...").

You might want to try using the Conditional Rules module: use an "if condition" (contained in the Rules Action), and the Rules Action "... to associate them to different profile types ..." would only be executed if the "if condition" would be true. For a sample using the Conditional Rules module (for which there is not a lot of docu available), refer to my answer to the question "How to prevent a node being saved when using the Rules module?".

Instead of using Conditional (if/else) logic within the Rules Action, you can also use Switch logic.

Be aware: this module only has a beta release for D7, though it's used in over 8K sites (which makes it seem like a pretty robust module though).