I'm extremely new to Node and trying to get my head around app basics. I'm curious as to why these two commands:
node app.js
--vs--
npm start
output the same thing to the console and appear to continue "listening", but why when I try to access http://localhost:3000 I get a 404 only when running the first command.
I see that Express 4 seems to have a different app structure, but why is it that one successfully listens and the other doesn't, despite the same behavior in the console?
Any explanation is helpful. Thanks!

npm startlooks into thestartscript in your package.json. It could be different script than app.js. Try look into package.json.