What should I know when choosing a namespace name?

For non-technical stuff, read the Frameworks Design Guidelines. They have lots of good advice. Briefly:

  • Start with a company name.
  • choose stable (version-independent) names. FrobCorp.FrobozzleV2.Utilities is bad.
  • choose names that reflect the code purpose rather than the politics of the organization that produced it. FrobCorp.AdvancedResearchDivision.CambridgeOffice is bad; the AdvancedResearchDivision might be renamed tomorrow and the Cambridge office might be relocated.
  • use PascalCase unless that violates your branding. FrobCorp.jFrobozzle looks terrible, but FrobCorp.Jfrobozzle looks even worse.
  • use plurals when appropriate
  • and so on.

There is a lot more good advice in the guidelines that I have not reproduced here. Go read them.

However, it sounds like you've got the non-technical stuff down. One of the bits of advice in the guidelines is "do not name a type the same as its namespace". That is good advice not just because doing so is confusing to readers; there is a good technical reason as well.

For the technical reasons why naming a type the same as its namespace is a terrible idea, see my articles on the subject:

https://web.archive.org/web/20120111133911/http://blogs.msdn.com/b/ericlippert/archive/2010/03/09/do-not-name-a-class-the-same-as-its-namespace-part-one.aspx (At least as of January 2020, this is only available on archive.org.)

Tags:

C#

Naming