personally though... i would suggest that you simply start off with setting up a hosting account someplace and then growing into having your own servers...
from a person that has been down that road. i can tell you that the goal of your new business is
1) to get up and running and make money.
2) conserve your resources (time and money)
3) market your services
4) expand as needed
if you start out with trying to have you own servers, you will spend a lot of time trying to manage the servers instead of working on your application. when you are focused on your application, your server maintenance may start falling behind in patches and security.
while you are still growing, let someone else have those headaches. you focus on building the application and the business. especially since you are asking that question to begin with... that tells us that you may have a steep learning curve ahead of you to tackle everything at once.
plus. just setting up a hosting account someplace is more cost effective right now. they take care of all backups and such and you can get a hosting account with everything you need (like with me) for $25-$36 a month. i have see other companies offering it even cheaper than that... like $9 a month (although i am not sure how they are doing it and havnig any decent services.)
if you go full load with getting servers and rack space and such, you are immediatly into $200 a month minimum for a quality service. plus YOU are responsible for backups and everything else in between.
once you start needing to expand and expand to the point where you need your own hardware... migration is relatively painless...
Providing Technology services to non profit orgs, Homeless Shelters, Food Pantries, Clean And Sober Houses and more. To date we have given away over 900 free computers !
caeli enarrant gloriam Dei !
In this case, you don't "need" more than 1 server to get started. Asp can execute in the web server, or you can use a thin layer on the WS and call an app sever remotely. Application design is key here. You can run the asp and connect to a database directly.
In most cases, you want to at least conceptually break the app into Presentation (ie, the WS), Logic (the "application server") and Data (the DB). This gives you some flexibilty in where you host the actual fuctionality, as well allowing some more options for scaling.
Example. You can build an asp.net layer that makes soap calls for the data to build the presentation layer. The Soap endpoint can local or remote. The Endpoint can be anywhere, and abstract the puts and gets to other soap calls, or direct DB access. All 3 layers can be hosted locally, or disconnected. This isn't the only option, either.