1) Role of Switch. i.e.
a) Is it an access switch (Just to connect endpoints with no fancy stuff).
b) Or a Middle layer / distribution layer switch ( needed to implement network Policies and filtering in network)
c) Or a Core network switch (Very High Speed Backplane and very high throughput; i.e Near Wire Speed)
d) Or All in one Multilayer Switch (jack of all, master of none)
a) Number of ports: Number of current users plus add 30 to 40 % growth potential for near future.
b) Type of Ports required: i) Access or Trunk Ports.
ii) POE: Power over Ethernet ports
iii) Is Fiber Optic port required?
3) Speed: Back plane speed & Port Speeds.
4) Latency :
a) Is your Application Tolerant to Latency (Voice :will you run VoIP, Video : Live streaming Via IP Cameras) Or Just a Data Switch
5) Network environment: is your Network environment Single Vendor or Multi-Vendor.
6) Manageability : Managed or Unmanaged switch
7) Type of Switch and Space Required:
a) Rack Mount (“RU -Rack Unit” space required) or Desktop
b) Modular : can add function specific Modules
c) Stackable: Can be stacked one over other.
Should have certain amount of free space around the switch for proper air flow.
8) Functionality & features required
a) Is Layer 3 functionality required?
b) VOIP: sensitive to Latency.
c) Encryption: Data security but may add latency.
d) QOS: quality of service, segregate and prioritizes traffic in case of network congestion.
e) Features such as Firewall, Intrusion detection, load balancing, WAN modules may be required.
9) Other Factors:
a) Power requirements : i ) actual power required by switch
ii) Power required for Cooling
iii) switches available in AC as wells as DC Power options.
b) Weight and Size: for large switch it may require more than one person to install.
c) Expandability: Require Expandability depending on growth of your business needs.
d) Cooling: proper cooling arrangement.
e) Cable Layout and Routing Cables: proper routing to minimize the length of cable used.
f) Ease of Configuration: Time and Expertise required to configure Features and Troubles shoot.
g) Calculate Down time and its Cost.
h) Add Support cost from the Vendor and AMC Cost.
10) Redundancy: if the application is critical install redundant devices and power supply.
11) Total COST: Last but not the least is cost, add all the above to your Total Cost.
Sorry for posting this lengthy answer, for a small switch it is o.k. if you miss some points but these points may be required to be considered for calculating the total cost of enterprise level switch.
I would consider the use case for the switch: access for clients, access for equipment, building layout, data center, data center scale etc. etc.
Then I would find the requirements:
Port speed support: 10 Mbps support?, 100/1000 Base-T, 10G SFP+? Base-T? 40G, 100G?
Features: Basic or advanced routing? Stacking? Layer 4-7 features?
Serviceability: What uptime do I require/is the CFO willing to pay for?
Of course this will change depending on the scale of the deployment.
Consider the ability of the vendor to support you in the different layers, switching, routing, security and standardise on one vendor at each layer, ie. Brocade switches, juniper routers and check-point security.
Also consider if you are ready to virtualize your L3 and security and even load balancing.
Port speed, tgen gig.? Backplane to support the aggregate port speeds.
Support ability, ease of configuration, stability, and cost. That being said, I prefer Juniper over Cisco.
Number 1 consideration MUST be "it meets my needs". Throughput is important, but if your 'cost per port' exceeds your budget or your expected growth will NEVER reach the switches potential, you've bought the wrong switch. Most Tier-1 branded devices are solid, tested in all environments, and have statistics that will meet or exceed all but the most demnding enterprises. The brands that provide the best support, device tools ( software ), functions and features, you do not want to spend excess time troubleshooting your network. A 'cheap' switch can get very expensive for time spent getting it to operate to your needs.
Know what you're going to plug into it, then decide based on the supported features you need. Do you need management? Do you need PoE? Do you need to have a fiber uplink? Do you need stack support?
As with most purchase decisions, knowing what are you going to use it for, allows you to choose based on functionality, and not on "marketing"...
After that, I agree with Ben Woods, all things equal, throughput, bandwidth and latency...and I'd add pricing as well.
Throughput, bandwidth and latency- in that order.