Różnica polega na tym, że powiemy np.
El estuvo comiendo y se fue - zjadł i poszedł
Nie możemy powiedzieć "El estaba comiendo y se fue." bo by nie miało sensu.
Estuvo użyjemy aby powiedzieć, że jakaś czynność się już skończyła np. Que hiciste ayer por la noche? Estuve viendo la tele. (nie ma dokładnie określonej godziny, tylko wieczorem, rano itd.)
Albo , że jedna czynność sie już skończyła i zaczęła się inna np.
El estuvo comiendo y se fue.
Estuve viendo la tele y me fui a dormir.
Natomiast estaba używamy kiedy chcemy powiedzieć, że jakaś czynność trwała np.
Que estabas haciendo a las 3 por la tarde? Estaba comiendo. (mamy dokładnie okreslony czas - godzinę, albo np. kiedy zadzwoniłaś, kiedy padał deszcz, konkretną chwilę)
Najczęściej jednak używa się kiedy jedna czynnośc trwała i została przerwana przez inną np.
Cuando estaba viendo la tele el me llamo.