Think about how each of these is actually doing the communications. Specifically the difference between how broadcast and multicast group addresses and how they are handled in the network. Compare the amount of traffic each generates. What happens when you hit a router, a switch?
Hopefully these questions will help you get where you need to answer the question.
The proposal that you could use broadcasts & signal the upper layer protocol you want to use in the EtherType field (Assuming we are using Ethernet at layer 2, which is the norm) is really flawed. In a layer 2 frame, the EtherType determines the upper layer protocol. So assume that the EtherType code was 0x0800 then it signals to the TCP/IP stack that the upper layer protocol is IPv4. Is he really suggesting that we should just broadcast all IPv4 traffic over the network rather than have a mutlicast group to isolate segments of traffic? At my work, we have lots of /23 subnets that are almost fully saturated. We also use multicast for various purposes, but assume one of those purposes was to video stream. I know from my own testing that streaming a HD quality video uses about 7MB/s (not bits, MegaBytes). Assuming only 10 users would want to watch the video, using his method of broadcasting & identifying the upper layer protocol as IPv4, we would potentially stream 7MB of unwanted data to 500 users for no reason. Considering some of our ports are FastEthernet, this only leaves them 5.5MB of bandwidth for anything else. What would be the point of that? Now assume the server has a gig port & needs to send 2 video streams. Using his method, every one of the 510 possible users on the network would have a fully saturated link to the network, and the initial 10 users on one broadcast feed would start to see lag because they are getting 2 streams, each at 7MB, but the port is only capable of 12.5MB as its FastEthernet.
The same principle applies if he was instead talking about a layer 3 packet signalling an upper layer protocol in the "protocol" field. A lot of multicast streams tend to be UDP or RTP for video, so the packet would signal protocol 17 or 28 respectively. Then the same whoring of bandwidth problem would apply.
Hope this helps.