ждать triggers the genitive case (I put весну :/)
Edit: I am pretty sure ShadyArch posted about this but I can't easily find my own old comments anymore let alone other people's since they changed the site. I believe he was saying that the object of ждать when more active/animate and can somewhat control its arrival is more likely to be declined in accusative while more passive/ inanimate things that "just happen" are more likely to be declined in genitive. But I stand to be corrected.
The correct pronunciation is весны́. You can have a listen here. http://forvo.com/word/%D0%B2%D0%B5%D1%81%D0%BD%D1%8B/#ru I highly recommend the website Forvo for any pronuciation questions.
Когда? — Зимой (adverb) An adverb is an unchangeable part of speech, no declension!!! Adverbs are words used to describe verbs, adjectives or other adverbs. They answer such questions as Как? (How?), Где? (Where?), Когда? (When?), Куда? (Where?), Откуда? (From where?), etc. http://masterrussian.com/adverbs/introduction.htm
Basically you just need to remember. I'm a native speaker, so it's natural for me, however that means I'm not sure about the "why?". It is just how it is. Maybe someone can explain better.
In this case I can't even imagine why would someone think "на" could be required here. If you could provide an analogous case you're thinking of, where "на" was used, I would try to explain the difference for you.
Prepositions are tricky, they work very differently in different languages. So it is never as simple as just remembering how that preposition translates from Language A to language B and be done with it. Any given preposition can be translated in various ways depending on context.
Anyway, instances where "for" would be translated as "на" are scarce. I can only think of one example "работать на кого-то" - "to work for someone". Otherwise those two have little in common.
It would be easier to treat "ждать" as "await", if you want to understand why it doesn't need a preposition.
The originator may have insisted on "was waiting" because ждать is imperfective, but I think that might be misguided, because English doesn't make the same distinction, and it seems clear that both winter and waiting are over anyway. Or it might just be an oversight. I'd report it.
"In winter" is correct. As a native speaker, a linguist, and a grammar fan, I can tell you this is not only the right answer according to your English teacher, but according to natural speech (at least in America). "In the winter" would suggest that the related action is a habitual action or an action which is only done in the winter. Therefore, the imperfect tense would never go along with "in the winter", i.e. "In the winter, I was waiting for spring," sounds very unnatural. One could remove this habitual idea by specifying a particular (definite) winter - "In the winter of 1994, I was waiting for spring." One could correctly say, "In the winter, I wait for [arguably required 'the'] spring." However, someone previously noted that, after "зимой", one expects the imperfect. Also, my natural reaction when reading or hearing, "In the winter, I wait for spring," is to picture a person who does nothing during the snowy months except look out the window in the hopes of seeing a flower.
Я понимаю, почему русский в бете. Потому что очевидные варианты ответа система не принимает. «Возле двери» и «у двери» не считаются равнозначными! Всё бы ничего, но когда я делаю test out, а не прохожу по порядку — я могу не дойти до конца давая только правильные ответы! Приходится всё переделывать сначала. И это одновременно расстраивает и раздражает.
Well, this is true of any language course, which has limited vocabulary. Duolingo courses do not go too deep and therefore have limited vocabulary by design. Originally the limit on the number of introduced lexemes was much lower than now, so most teams are trying to design a new, broader course. Besides, the software has limited capacities to program acceptable translations, so it's a computer resource problem as well.