This really (and I mean really!) depends on the actual requirements from the client. I am very bias towards Microsoft but can sometimes be very pricey for newcomers.
Here are my thoughts.
1) Which language. Microsoft have invested subsequent amounts of money in their ASP.NET platform.
www.asp.net[
^] has tremendous amounts of learning material to help you over basic to advanced web development techniques. You will notice there are two frameworks mentioned. Webforms and MVC. To be honest, I would start with Webforms. This should give you a flavour of the ASP.NET platform. MVC is something to consider but maybe slightly confusing for a beginner.
Microsoft provide free development environments which can be used to create websites with ease. You should download
Visual Studio Express[
^] and start creating ASP.NET websites today.
Which language really depends. C# and VB.NET are very similar however the syntax is different. If you are used to VBA / VB then your choice should be VB.NET. If you prefer more human readable code, VB.NET should be your choice.
HOWEVER, C# is currently the "prefered" language and is very similar in syntax to client side script commonly used in websites which is called Javascript. If you want to progress your career with .Net development then I think C# should be the way to go but do understand that both C# and VB.NET are just language choices. It is the .NET framework you have to understand, the language is just how you communicate with it.
2) Which software? well again this should be (if .Net is your choice) Visual Studio. The link above to Visual studio express are free and does give you a good starting point.
3) Learning materials do sometimes come at a price, however, the ASP.NET link above does have more than enough information to get you started. Google other things on your mind and you will come across massive amounts of blogs and reference material that help. Also, CodeProject is a one stop shop for help believe me. The articles here and people who use their free time to help others is just out of this world!
If you want to spend a couple of quid I would really recommend Pluralsight
http://www.pluralsight-training.net/microsoft[
^]. Massive content from quality people!
But going back to my first statement. Your client will / should dictate their requirements. If they are after CMS systems. Look for .Net ones. I can only recommend Umbraco as this is what I use and enjoy using (also its open source). If it is a standard (Brochure) website, VS Express will certainly be my choice as a starting block.
Finally. My thoughts on what to stay away from. (These are just my opinions and I don't mean to upset others.)
1) Stay away from PHP and LAMP
2) Use SQL instead of Oracle or MS Access. You could use No-SQL like raptorDB etc but I would stay with SQL in the begining.
3) To begin with, don't rely on OMR's to do the data access and mapping. Whilst attractive you will find learning standard ADO.NET data access better for you in the long run.
4) Don't be afraid to ask CodeProject.
I hope this helps!