So I want to read a few i2c sensors (like the mpu6050 or bmp280, ...) and I wonder if i can get the time to read them lower. With a normal arduino uno it takes about 2.2ms to read one out, with a esp8266 at 160mhz it only takes 1.5ms can it possibly go lower or are there limitations?
And if there are non what would be the best micro-controller to lower it as much as possible?
The I2C bus runs at fixed, but selectable speeds. Choose the fastest speed compatible with the sensor.
How you do that depends on which I2C library you are using.
Maximum speed of the ESP8266's I2C is not necessarily faster than that of the Arduino, as the ESP does I2C completely in software, while the ATmega processors do this in hardware.
Check the data sheet of the sensors you have. Most can handle 400 kHz, some are limited to 100 kHz, while others can deal with a clock running as fast as 1 MHz or even higher.