It depends on what model you want to use.
Dedicated servers are expensive to host and at-risk to DDoS/attacks but provide the most reliable service to all players.
Listen servers give one player (the host) an advantage, are not reliable, but are a cheaper solution for the developer. You need a lot of extra code to try and match make people with similar geographies to minimise lag.