Kiedyś gdzieś wyczytałem (chyba w poradach Google dla webmasterów), że zaleca się, aby wyrazy były oddzielone znakiem "-", czyli czwarta przedstawiona przez Ciebie możliwość. Ale nie sądzę, aby miało to aż tak duży wpływ na pozycjonowanie, choć w moim odczuciu zdecydowanie najgorsza jest pierwsza możliwość czyli nieoddzielanie wyrazów w żaden sposób. Co do reszty to pewnie wedle upodobań.
Co do polskich znaków to nie ma problemu, ale pamiętaj, że na wielu forach jest tak, że jak ktoś przekopiuje taki link z twojej strony i wklei do posta, to po wysłaniu te polskie znaki w linku mogą się nie wyświetlić prawidłowo (z tego co widzę akurat na 4programmers chyba nie ma tego problemu). Nie wiem jak to widzi Google, ale być może zaindeksuje go w takiej formie, podczas gdy wcześniej tę samą treść zaindeksowało z twojej strony, gdzie link wyświetlał się prawidłowo. Dla Google to 2 różne linki prowadzące do tej samej treści, więc istnieje ryzyko wykrycia duplikatu, co może się wiązać z wykluczeniem strony z indeksu. Dlatego ja dla bezpieczeństwa preferuję jednak brak polskich znaków w linkach.