I've seen some IndyCar fans saying races lasting 1 ½ to 2 hours are too short for the people on site, instead those races should be 2 to 3 hours long. On the other hand, some people are saying F1 races lasting over 1 ½ hours are too long for TV and should be just over 1 hour.
For me this depends on the profile of the series. In a premier championship with up to around 20 races, I'd like the races to be 2 to 3 hours, especially if I was attending the race. (Although even 1 ½ hours of F1 feels too much these days.) This is where I think NASCAR has got it wrong for me; with 36 races, a single race doesn't feel worth spending 3 to 4 hours watching it. 2 to 3 hours isn't really so long; a three-set tennis match goes usually above two hours and a round of golf usually takes around 4 hours.
Sports cars are a different case. IMSA's 2 hours, 40 minutes feels like the absolute minimum for a race with driver changes. I prefer the 3hr Blancpain endurance races way over the 1h sprint races. I find something between 3 and 4 hours ideal for a regular sportscar race; 6 hrs is already too much for a regular WEC round.
Flagship races should obviously be longer. 3 to 4 hours like Indy or Daytona 500 feels just about right; it's like watching a grand slam tennis match. Indy wouldn't feel the same if it was 300 miles completed in less than two hours. Though anything above 4 hours feels too long (Coke 600), unless it's an endurance race. 24 hour races have their own charm, though I kinda prefer 12hr races as they are easier to watch in their entirety but still feature some night racing.
MotoGP is still cool even though the races are only about 40 mins. It's a nice Sunday afternoon break, though the races are still more like episodes of a series rather than movies. For those attending the race, MotoGP at least has a great support package. Though watching from TV, I think there's too much time between the classes, taking too much of my time.
I said this depends on the profile of a series. I'm not sure I'd spend regularly 2 hours to watch DTM but like MotoGP it's a nice afternoon break with a relatively short race.
If I was attending a race, there should be a long headline race or a good support package if the headline race isn't that long. F1 obviously has a good weekend structure. In addition to the headline race, there's quite an interesting support package, and the qualifying is probably more important than in any other series. Also NASCAR has obviously a good package for a weekend, in addition to the Cup race there's an Xfinity or Truck race the previous day. IndyCar kinda lacks the big draw far Saturday unless it's a doubleheader race like Detroit or there's an IMSA race. In a way, shorter doubleheader races might be better for the people attending the race. On the other hand, it might mean there are races too often for TV viewers. It may work for DTM but not for IndyCar which wants to present itself as a major league.