Translation:We are not allowed to speak English.
In certain contexts they're effectively the same; they both mean "speak using the English language". They both work in this Duolingo sentence.
However, unlike "speak in English", "speak English" can be used not only to mean "speak, with English being the language used", but also to discuss fluency levels. "You speak English well" means that you're competent at English grammar and you have a good vocabulary.
"You speak in English well", for its part, doesn't sound natural or correct. "You speak well in English", on the other hand, is theoretically possible, but it seems to be referring to your ability to express your thoughts and be persuasive, independently of your actual fluency. And you may also be fluent in another language, say Chinese, but not particularly charming when speaking that language.
Can't 不准 also be translated as "to forbid"? Is "we forbid speaking English" an accurate translation?
That's a good question. I think your suggestion is indeed a possible interpretation (though I believe "prohibit" or "[do] not allow" would be more likely and somewhat more accurate in terms of nuance than "forbid" – but I could be wrong).
However, to my mind the more important question raised by your comment is whether this sentence is properly translated as "we do not allow speaking English" or "we are not allowed to speak English", which are very different in meaning.
Examples available at Linguee suggest it may be the former rather than the latter:
Chinese native speakers?
Edit: If I recall correctly (coming back to this page after a long time), a user called Mr.rM, whose comments have all now been removed, responded that it could be either, depending on the context.
It's not bad, but it's not quite accurate.
Here "不准" specifically refers to something being not being permitted by someone else, i.e. someone other than the person whose actions are prohibited.
"Must", on the other hand, can refer to an internal admonition. We can tell ourselves we must not do something, even if no one actually prohibits us from doing it.
I’m going to give this a go:
你们不准说英语 = you are not allowed to speak (in) English = You are not permitted to speak (in) English.
你们不可以说英语 sounds a bit odd to me .. it feels like it’s fine as a positive sentence 你们可以 (May I have a piece of cake? You may) ...but not quite native speaker level of flow to use as a negative? But = You may not speak (in) English.
你们不行说英语 again it feels like you need to say 你们说英语？不行！or 说英语不行！不行 seems to mean “No” or “that’s not ok” or, in my last sentence: “it’s not ok to speak (in) English”. Or “it’s not going to work”. A bit easier to translate into french: ça va or ça ne va pas
你们不能说英语 = You can’t speak English = you are not able to speak English.
But I look forward to the actual experts on this. I just tried to answer as an exercise for myself. Wondering what they say :)
Same character, different use. It's common for Chinese characters to be used in different compounds and to take on different (but often related) senses, but also you can see a lot of convergence, divergence, and trading places if you look into the etymological history. Wiktionary can be helpful for the different senses of a given character, as can a mobile dictionary like Hanping. (I've never regretted purchasing the pro version of Hanping and the camera add-on.)
Additionally, in Traditional Chinese, they are actually different characters. 准 (to be permitted) is the same in both Simplified and Traditional, but 'zhǔn' in terms of preparation is 準 in Traditional, and was simplified to 准. A lot of characters that are supposedly used in very different meanings are in fact different characters in Traditional script, not to say there aren't characters that aren't used in very different contexts. For example,
发 means both "to discharge" (发展 fāzhǎn; to develop) and "hair" (头发 tóufǎ: head hair) in Simplified, but in Traditional the characters are respectively 發 for "to discharge" (發展) and 髮 for "hair" (頭髮).