I don't know that I'd go as far as to say that VB.NET is close to the English language, but I think it's about as close as you really get. Sure, once you've programmed it for a while, it seems like English - it does read like a book to a seasoned VB programmer, but if you stop and think about real world English:
For i As Integer = 1 To 10
Console.WriteLine("Hello World")
Next
Is a long way from:
Write "Hello World" and move to the next line of the console 10 times.
Of course, the English is ambiguous - does it want you to do the whole thing 10 times, or just write "Hello World" once and then move to the next line 10 times?
I guess we need to learn to talk in a less ambiguous fashion:
Do this 10 times: In the console, write "Hello World" and move to the next line.
But I doubt very much there's a programming language that really reads like English. Even those Cobol fanatics that say it's like natural language - it really isn't if you stop and think about how you think about things in a real way instead of in the manner defined by the programming language.
Even in VB you're limited to the way the framework dictates the way you do things...