"비가 오는데 자동차로 갈 것을 추천해요."
Translation:It's raining, so I recommend going by car.
Both of these endings express basically "I'm setting a context for the rest of the sentence". Think something along the lines of "considering that..." However they differ in their implication. -니까 gives the slight impression that the context provides a reason for the rest of the sentence:
- 비가 오니까 자동차로 가는 걸 추천해요. "Considering it's raining, I suggest going by car."
-는데 (or -ㄴ/은데 for present tense adjectives) on the other hand often implies "but":
- 비고 오는데 걸어서 오셨어요? "Did you come on foot despite the rain?" ("It is raining but you (still) came on foot?")
Especially for -는데 (but sometimes also -니까), this implication can be very weak in a given context, sometimes it is hardly present at all so only the vague "setting a context" is left over:
- 난 파티에서 미진 씨의 외국 친구를 한 분 만났는데 그 친구가 한국어를 엄청 잘 하셨어. "I met a foreign friend of Mijin's at the party and they spoke really good Korean."
(Also -는데 has other drives functions which I won't go into right now.)
But if there is a clear "because" or "but" relationship between the two clauses, you still wouldn't use the "wrong" one, which is why the example sentence sounds odd with -는데.