まで or までに in 「道が混んでいて、バスが駅に着く＿＿とても時間がかかった」?


The question above is an exercise in the usage of まで vs までに. I thought that
because the action 時間がかかる continued until the bus arrived at the station, the
answer should be まで.

However, the answer given in the exercise book is までに. But I don't understand
why. (I guess the key is whether a Japanese speaker would conceptualize 時間がかかる
as 瞬間的 or 継続的 but I am not sure.)

Could someone please explain why the answer is までに?




I'm a Japanese native, and 「道が混んでいて、バスが駅に着くまでとても時間がかかった」 would sound natural
to me.

If I had to compare the two:

> 道が混んでいて、バスが駅に着くまでとても時間がかかった  
>  道が混んでいて、バスが駅に着くまでにとても時間がかかった

I think the former sets the mental time to the moment the bus arrived, while
the latter sets that moment in the past. I don't think it makes any
significant semantic difference with this example though.

In the following example, the former sounds better (and the latter sounds
unnatural).

> 車内が臭くて、バスが駅に着くまで息ができなかった  
>  車内が臭くて、バスが駅に着くまでに息ができなかった

IMO this is because you couldn't breathe up until the point of time when the
bus arrived. It'd be odd to say "you had finished not breathing by the time
the bus arrived" (the latter phrasing).

In the following example, it's the opposite, and only the latter works.

> 車内が暑くて、バスが駅に着くまでアイスが溶けてしまった  
>  車内が暑くて、バスが駅に着くまでにアイスが溶けてしまった

IMO this is because it's odd to say the icecream melted up to a specific point
in time when the bus arrived (one wonders if the icecream might stop being
melted at that point). It's more natural to say the icecream had finished
melting by the time the bus arrived.

With the bus example, both are not unnatural ways of saying it, and IMO thus
both work.

