OK, so we understand that BACnet is a communications protocol.
Well, Ethernet, IP, and MS/TP are the ways that BACnet devices can communicate with each other. Think of these as phone calls, emails, and text messages: they’re speaking the same language, but not using the same mediums. You can have a mix of BACnet IP, MS/TP, and Ethernet in your building. So, how exactly are they different?
MS/TP (Master-Slave/Token Passing) uses token passing to communicate between devices. “Master” devices put in requests for service, but only if they have a token. “Slave” devices send responses to those requests, and don’t need a token to submit their responses. MS/TP is usually on copper 2 wire network, and often at zone-level equipment (i.e. whatever is controlling the room), rather than higher up in the architecture. So, your BMS likely would not be on MS/TP. This Automation Wiki post gives a great explanation of how MS/TP works.
Ethernet and IP are relatively similar, as they aren’t dependent on token passing. The important thing to remember is that Ethernet communicates based on MAC addresses, while IP communicates based on IP addresses. Additionally, Ethernet isn’t routable, so devices have to be on the same subnet to communicate with each other. IP is routable, but requires a BACnet Broadcast Management Device (BBMD) on each subnet to send messages across the network. So, you’d likely use Ethernet if you only need to communicate between subnets, and would use IP to communicate across the network. This thread from HVAC Talk is very helpful for understanding the differences between IP and Ethernet.
For more information, this article from Phil Zito’s Building Automation Monthly really digs into IP and MS/TP and the different network layers.