It is a bi-directional interface - for connecting, one or more Master processors, with,
one or more - low-speed devices like, microcontrollers, EEPROMs, A/D - D/A converters, I/O interfaces and other similar peripherals in an embedded system.
Unlike SPI, I2C can support, a multi-master system, allowing, more than one master - to communicate, with all devices - on the bus, although, the master devices - can't talk to each other, over the bus, and, must take turns - using the bus lines.
I2C is really useful, when you want to have - more than one microcontroller -logging data,
to a single memory card, or displaying text, to a single LCD.