1. Size: Semipermeable membranes have pores of a specific size. Large molecules, like proteins and polysaccharides, are too big to pass through these pores. Smaller molecules like water, oxygen, and carbon dioxide can easily pass.
2. Polarity: Semipermeable membranes are preferentially permeable to polar molecules. This is because the membrane itself is made of phospholipids, which have a hydrophilic (water-loving) head and a hydrophobic (water-fearing) tail. Nonpolar molecules, like lipids, can readily pass through the hydrophobic tails of the membrane, while polar molecules like sugars and ions have a harder time.
Let me know if you'd like more details!