Did you know that in Russian we have two different verbs to say “to dream”? Мечтать means “to dream when you do not sleep” and сниться means “to dream about something when you are asleep”. Мечтать is used with the preposition o and the Prepositional case. Сниться is used with the Dative case (the person who is dreaming) and the Nominative case (what you are dreaming about).
Я мечтаю о детях. I dream about having children.
Мне снятся дети. I dream about children (when I sleep at night).