I once thought I need different primary menus for different viewers.
In best case those users have a GET paramter which decides which menu has to be shown.
For Example:
You go into WordPress and add a menu with a name of your choice. I choosed "music".
Now if you want somebody view the music menu you have the parameter
http://www.example.com/?view=music.
You can do this with every menu you have.
In case you leave it empty nothing happen at all.